1

I've configured Turpentine Varnish Cache and on our store we run 2 themes, one with an ajax cart, which works fine, the other with a non-ajax cart which seems to be cached.

In our page.xml file for this theme, the cart is defined as:

<block type="checkout/cart_sidebar" name="cart_sidebar" as="topcart" template="checkout/cart/topbar.phtml" />

in our header block

            <block type="page/html_header" name="header" as="header">               
            <block type="page/template_links" name="top.links" as="topLinks"/>
            <block type="page/switch" name="store_language" as="store_language" template="page/switch/languages.phtml"/>
            <block type="page/switch" name="store_switcher" as="store_switcher" template="page/switch/stores.phtml"/>
            <block type="directory/currency" name="store_currency_selector" as="store_currency_selector" template="directory/currency_top.phtml"/>
            <block type="core/text_list" name="top.menu" as="topMenu" translate="label">
                <label>Navigation Bar</label>
            </block>
            <block type="page/html_wrapper" name="top.container" as="topContainer" translate="label">
                <label>Page Header</label>
                <action method="setElementClass"><value>top-container</value></action>
            </block>
            <block type="checkout/cart_sidebar" name="cart_sidebar" as="topcart" template="checkout/cart/topbar.phtml" />
        </block>

According to the Turpentine FAQ I should define it as follows to disable the block from being cached:

                <block type="checkout/cart_sidebar" name="cart_sidebar" as="topcart" template="checkout/cart/topbar.phtml">
                <action method="setEsiOptions">
                    <params>
                        <access>private</access>
                    </params>
                </action>
            </block>

But this has no effect at all.

In the turpentine_esi.xml it is defined as:

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

How can I get this to work? Does anyone have any idea?

Thanks.

1 Answer 1

2

Below sorts the cart side bar but breaks the cart page so there must be a further call to cart page.

<reference name="cart_sidebar">
        <action method="setEsiOptions">
            <params>
                <access>private</access>
                <flush_events>
                    <sales_quote_save_after/>
                </flush_events>
                <registry_keys>
                    <current_category/>
                <registry_keys>

            </params>
        </action>
    </reference>

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.