Quindi abbiamo inserito il blocco "visualizzato di recente" nella nostra vista prodotto. All'inizio sembra tutto a posto, ma ora vedo strani errori che hanno a che fare con layout nulli. Se spengo il caching, funziona bene, ma con la memorizzazione nella cache della pagina completa ha esito negativo quando si chiama $ this-> getColumnCount(); nel modello.Magento: lo spostamento di "Visti di recente" nella pagina del prodotto crea strani errori di memorizzazione nella cache
Quello che ho fatto per consentire visti di recente sulla pagina del prodotto è stata:
nel catalog.xml all'interno del blocco contenuto di 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>
nel file di modello: catalogo/prodotto/vista .phtml:
<?php echo $this->getChildHtml('recently_viewed') ?>
tutto carichi multa la prima volta, ma poi se clicco su un altro vista del prodotto, quindi ricaricare la pagina di errori fuori. Ho rintracciato l'errore fino alla classe: Mage_Page_Helper_Layout.
la funzione getCurrentPageLayout(), ha una linea:
$this->getLayout()->getBlock('root')
e $ this-> getLayout sta tornando nulla che provoca la chiamata getBlock ad un'eccezione.
se ho disabilitato la memorizzazione nella cache non si verificano errori e tutto funziona correttamente.
è che in Enterprise Edition? Se si guarda in 'app/code/core/Enterprise/PageCache/etc/cache.xml' sembra fornire una soluzione alternativa per quel blocco ma non conosco la funzionalità o il modo in cui funziona. – clockworkgeek
sì, la sua edizione aziendale. grazie per il puntatore. sto esaminando quel codice ma non riesco a trovare un modo per disattivare completamente il caching per quel blocco. anche se imposto cache_lifetime su 1, mi viene comunque restituito lo stesso errore e, se tolgo il blocco xml dal cache.xml, esso memorizza la pagina in modo indefinito e non si aggiorna quando faccio clic su altri elementi. – GeekPride