Cómo detener la trementina de la caché de mi "encabezado" del bloque, y sólo el uso de la caché de la página?

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

  •  13-12-2019
  •  | 
  •  

Pregunta

En mi header.phtml, Tengo una página específica de HTML (H1 tag) en virtud de $this->getIsHomePage() condición.Necesito este H1 a sólo aparecen en la primera página.

El problema es:en virtud de la Trementina, este H1 la etiqueta aparece en cada página.Yo creo que se debe a la Trementina almacena el bloque para todo el sitio.

Por defecto, turpentine_esi.xml tiene la siguiente configuración para header bloque:

    <!--
    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>

No tengo la información de inicio de sesión en el encabezado de la plantilla, así que creo que me puede caer el header bloque a partir de la configuración (o, más bien, reemplazar en local.xml).

La solución que se me ocurre es:no caché header bloque en esencia de Trementina, en todo, la memoria caché en el pleno del HTML de la página.Así que me quita este pedazo de turpentine_esi.xml.

El problema es:el H1 bloque todavía está representado en todas las páginas.

He reiniciado el barniz, php5-fpm, físicamente eliminados de Magento var/cache, sofoco bloques, ESI bloques y HTML de la página de la caché en admin...y sigo sin ver la versión incorrecta de la plantilla de encabezado, con H1 en cada página.

De otra manera, traté de cambiar el header opciones de almacenamiento en caché para public - esto no ayuda tampoco:

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

Estoy usando Magento 1.9.0.1.

¿Fue útil?

Solución

En la final, necesitaba anular (quitar) el header bloque de turpentine_esi.xml en app/design/frontend/base/default/layout/local.xml.Mi 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>

Otros consejos

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

También, por favor consulte este enlace https://rajeshganjeer.wordpress.com/2014/05/28/varnish-with-magento-terpentine/

Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange
scroll top