Come fermare la trementina dal caching del mio blocco "intestazione" e utilizzare solo la cache della pagina?

magento.stackexchange https://magento.stackexchange.com//questions/79734

  •  13-12-2019
  •  | 
  •  

Domanda

Nel mio header.phtml, ho un html specifico per pagina frontale (tag H1) in condizioni $this->getIsHomePage(). Ho bisogno di questo H1 per apparire solo sulla prima pagina.

Il problema è: sotto la trementina, questo tag H1 appare su ogni pagina. Credo che sia perché la trementina cacciande il blocco per l'intero sito.

Per impostazione predefinita, turpentine_esi.xml ha la seguente configurazione per il blocco header:

    <!--
    A default Magento site includes a logged in user's name in the welcome
    message and the number of items in the shopping cart so it must be
    cached per-client.
    -->
    <reference name="header">
        <action method="setEsiOptions">
            <params>
                <access>private</access>
                <flush_events>
                    <wishlist_item_save_after/>
                    <wishlist_item_delete_after/>
                    <sales_quote_save_after/>
                </flush_events>
            </params>
        </action>
    </reference>
.

Non ho le informazioni di accesso nel modello di intestazione, quindi credo di poter rilasciare il blocco header dalla configurazione (o piuttosto lo sovrascriverlo in local.xml).

La soluzione a cui posso pensare è: non cache header Block in Trenname Trepentine, la cache nella pagina intera html. Quindi ho rimosso questo pezzo da turpentine_esi.xml.

Problema è : il blocco H1 è ancora reso su tutte le pagine.

Ho la vernice riavviata, php5-fpm, ha cancellato fisicamente i blocchi var/cachegCodegCode di Magento, blocchi flussosi, blocchi ESI e la cache HTML della pagina in Admin ... e vedo ancora la versione errata del modello di intestazione, con H1 su ogni pagina. .

Un altro modo, ho provato a modificare le opzioni di memorizzazione nella cache header su public: questo non ha aiutato neanche:

    <reference name="header">
        <action method="setEsiOptions">
            <params>
                <access>public</access>
            </params>
        </action>
    </reference>
.

Sto usando Magento 1.9.0.1.

È stato utile?

Soluzione

Alla fine, avevo bisogno di sovrascrivere (rimuovere) il blocco header da turpentine_esi.xml in app/design/frontend/base/default/layout/local.xml.Il mio local.xml:

<?xml version="1.0"?>
<layout version="0.1.0">
    <default>
        <reference name="header">
            <action method="setEsiOptions">
            </action>
        </reference>

        <!-- We at Tahta.com.ua only need to cache the cart block. -->
        <reference name="top_cart_block">
            <action method="setEsiOptions">
                <params>
                    <access>private</access>
                    <flush_events>
                        <wishlist_item_save_after/>
                        <wishlist_item_delete_after/>
                        <sales_quote_save_after/>
                    </flush_events>
                </params>
            </action>
        </reference>

    </default>
</layout>
.

Altri suggerimenti

<reference name="header">
 <action method="setEsiOptions">
    <params>
        <access>private</access>
    </params>
 </action>
</reference>
.

Inoltre, si prega di fare riferimento a questo link https:// rajeshganjeer.wordpress.com/2014/05/28/Varnish-with-magento-terpentine/

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top