页脚缓存解决方法..这是正确的方法吗?

时间:2011-03-30 13:09:46

标签: magento magento-1.4

我的footer.phtml中有以下代码块

 <!-- Customer Modal -->
 <?php if (array_key_exists("customer_select", $_COOKIE) == FALSE ): ?>
    <script type="text/javascript" src="<?=$this->getSkinUrl('js/jqModal.js')?>"></script>
    <script type="text/javascript">
        jQuery(document).ready(function(){
            jQuery("#customer_type_dialog").jqm().jqmShow();
        });
    </script>
    <?php include("../../templates.eu/templates.sbc.de/_includes/customer_select.php"); ?>
<?php endif; ?>

当我打开块缓存时,它会停止对此进行评估,只返回缓存的值。我可以解决这个问题,或者更好的方法是什么?基本上我正在检查是否存在cookie,如果确实存在,我将向页面添加一些js和另一个文件。

1 个答案:

答案 0 :(得分:2)

将上面的代码放在它自己的模板文件中并进行此布局更改:

<reference name="before_body_end">
    <block type="core/template" template="your/cookie/check/file.phtml" />
</reference>

这样可以缓存页脚(这有助于保持页面快速),并且每次都会评估您的cookie检查。此外,Javascript一直保留到页面的最后一个可能点,这是内联脚本的最佳实践。