Magento缓存添加两次内容

时间:2013-06-25 10:27:23

标签: php magento caching

我有Magento CE 1.7.0.2网站,其中包含自定义创建的主题。

问题是:只有当我打开缓存时 - 页面上的某些内容“加倍”。因此页脚在页面末尾再次显示页面。

屏幕: http://img37.imageshack.us/img37/3038/eqv7.jpg
Shop By块和页脚翻倍,正如您在底部看到的那样)  

有任何建议如何解决?或者从哪里开始看?

感谢您的帮助,
斯坦尼斯。

P.S。 代码“1-column.phtml”(此页面模板PHTML)

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <?php echo $this->getChildHtml('head') ?>
</head>
<body<?php echo $this->getBodyClass()?' class="'.$this->getBodyClass().'"':'' ?>>
<?php echo $this->getChildHtml('after_body_start') ?>
<div class="wrapper">
    <?php echo $this->getChildHtml('global_notices') ?>
    <?php echo $this->getChildHtml('header') ?>
    <div class="category-page">
        <?php echo $this->getChildHtml('breadcrumbs') ?>
        <div class="bread" style="margin-top:40px"></div>
        <?php echo $this->getChildHtml('global_messages') ?>
        <div class="product-page" style="min-height:auto;">
            <div class="content_main">
                <?php echo $this->getChildHtml('content') ?>
            </div>
        </div>
    </div>
    <div class="bread2"></div>
    <?php echo $this->getChildHtml('footer_block') ?>
</div>
<?php echo $this->getChildHtml('footer') ?>
<?php echo $this->getChildHtml('before_body_end') ?>
</body>
</html>

1 个答案:

答案 0 :(得分:1)

在您的布局中,您有两个页脚块,它们使用相同的page/html_footer类型。或者,此块类型不应在同一页面上多次使用,它将显示的第一个内容将被缓存并在以后的调用中返回(请参阅Mage_Page_Block_Html_Footer::getCacheKeyInfo())。因此,对于其中一个页脚块,您应该使用另一个块类型(这应该是footer_block,因为它是基本Magento中不存在的块类型。)

在旁注中,footer_block块定义了两次,一次在page.xml中,一次在catalog.xml中,并且两个页脚块都包含一个名为{{1}的子项},所以你可以尝试从bottom.container的定义中删除它。