Hemos puesto el bloque "visto recientemente" en nuestra vista del producto. Todo parece estar bien al principio, pero ahora estoy viendo errores extraños que tienen que ver con diseños nulos. Si apago el almacenamiento en caché, funciona bien, pero con el caché de página completa habilitado, falla al invocar $ this-> getColumnCount(); en la plantilla.Magento: Mover "Visto recientemente" a la página del producto crea un extraño error de caché
Lo que he hecho para permitir a visto recientemente en la página del producto fue:
en catalog.xml dentro del bloque de contenidos de catalog_product_view:
<block type="reports/product_viewed" name="reports.product.viewed" as="recently_viewed" template="reports/product_viewed.phtml">
<action method="setColumnCount"><columns>4</columns></action>
<action method="setItemLimit"><type>recently_viewed</type><limit>4</limit></action>
</block>
en el archivo de plantilla:/Catálogo de productos/vista .phtml:
<?php echo $this->getChildHtml('recently_viewed') ?>
todo carga finos el primer tiempo, pero si luego hago clic en otra vista del producto, a continuación, volver a cargar los errores de la página hacia fuera. Seguí el error hasta la clase: Mage_Page_Helper_Layout.
la función getCurrentPageLayout(), tiene una línea:
$this->getLayout()->getBlock('root')
y $ this-> getLayout vuelve nulo que provoca la llamada getBlock a una excepción.
si desactivo el almacenamiento en caché, no aparecen errores y todo funciona bien.
es que en Enterprise Edition? Si miras en 'app/code/core/Enterprise/PageCache/etc/cache.xml', parece que proporciona una solución para ese bloque, pero no estoy familiarizado con la función ni con la forma en que funciona. – clockworkgeek
, sí, su edición empresarial. gracias por el puntero. Estoy buscando ese código, pero no puedo parecer una forma de desactivar completamente el almacenamiento en caché para ese bloque. incluso si configuro cache_lifetime en 1, igual me da el mismo error, y si elimino ese bloque xml de cache.xml, simplemente guarda en caché esa página indefinidamente y no se actualiza cuando hago clic en otros elementos. – GeekPride