Siguiendo con mi aprendisaje de Zend Framework, me he topado con un problema que no logro solucionar. Primero lo comento el escenario.
Tengo un sitio en donde he configurado con un router, que cuando se acceda por url por ejemplo a busqueda/cualquiercosa.htm, este envíe esa palabra cualquiercosa a un controlador el cual una accion buscara esa palabra en la base de datos, y los devolvera tabulando los datos en su correspondiente view (archivo.phtml).
Ahora bien, el problema es que quiero cachear todas las paginas que va a ir componiendo la accion del controler, pero no puedo configurarlo. Lo he intentado muchas veces pero no logro darme cuenta en que estoy fallando. Lo ultimo que probé fue algo como lo siguiente:
Código PHP:
public function indexAction() {
$frontendOptions = array(
'lifetime' => 7200,
'debug_header' => true, // for debugging );
$backendOptions = array(
'cache_dir' => '/tmp/');
// getting a Zend_Cache_Frontend_Page object
$cache = Zend_Cache::factory('Page',
'File',
$frontendOptions,
$backendOptions);
$cache->start();
$f = new Zend_Filter_StripTags ( );
/* Busco la palabra en la base de datos y devuelvo los resultados */
$urlPagina = $f->filter ( $this->_request->getParam ( 'busqueda' ) );
$pagina = new ContenidoPaginas ( );
$datosPagina = $pagina->getPagina ($urlPagina);
/* Muestro el resultado en la vista */
$this->view->contenido = $datosPagina ['contenido'];
}
Desde ya muchas gracias.
Un abrazo.