У меня есть собственный модуль, который я написал, он довольно простой ... он просто добавляет небольшой блок в нижний колонтитул для отслеживания с помощью Media Forge.Добавляемый тег зависит от того, находитесь ли вы на странице просмотра продукта или нет.Это работало здорово .... пока я не включил кеширование.Теперь, если вы очистите кэш и загрузите страницу просмотра продукта, вы получите правильный блок для страницы просмотра продукта.Если вы затем перейдете на другую страницу (например, домой), она все равно будет использовать блок страницы просмотра продукта.Если я очищаю кеш и перезагружаю домашнюю страницу, она теперь использует правильную, но если я сейчас перехожу на страницу продукта, там используется неправильная.Так что это определенно проблема с кешем, я просто не понимаю, как я должен исправить эту проблему.
Я вставлю содержимое моих файлов ниже.Я с нетерпением жду каких-либо ответов!
XML-файл макета:
<layout version="0.1.0">
<!-- DEFAULT TAG -->
<default>
<reference name="footer">
<block type="core/template" name="mediaforge_footer" as="mediaforge_footer" template="tracking/mediaforge_default.phtml"/>
</reference>
</default>
<!-- PRODUCT VIEW PAGES -->
<catalog_product_view>
<reference name="mediaforge_footer">
<action method="setTemplate"><template>tracking/mediaforge_product.phtml</template></action>
</reference>
</catalog_product_view>
</layout>
config.xml для моего пользовательского модуля:
<config>
<modules>
<VPS_Tracking>
<version>0.1.0</version>
</VPS_Tracking>
</modules>
<frontend>
<layout>
<updates>
<vps_tracking>
<file>vps_tracking.xml</file>
</vps_tracking>
</updates>
</layout>
</frontend>
</config>
Добавил это в конец нижнего колонтитула.phtml:
<?php echo $this->getChildHtml('mediaforge_footer'); ?>
Определение модуля довольно простое, а два файла шаблона mediaforge_default.phtml
и mediaforge_product.phtml
довольно просты, поэтому я не будупотрудитесь включить их.
Есть идеи?