【问题标题】:Magento: Add Block Before FooterMagento:在页脚之前添加块
【发布时间】:2012-12-21 01:43:18
【问题描述】:

我正在使用灰度模板,并且我想将最近查看的内容移动到页脚之前的一个块中。 我需要这个与页脚颜色不同的块。 所以,我删除了这块 page.xml:

<block type="reports/product_viewed" before="right.permanent.callout" name="right.reports.product.viewed" template="reports/product_viewed.phtml" />

并添加到page.xml的页脚块中:

        <block type="page/html_footer" name="footer" as="footer" template="page/html/footer.phtml">
            <block type="reports/product_viewed" before="right.permanent.callout" name="right.reports.product.viewed" template="reports/product_viewed.phtml" />
            <block type="page/html_wrapper" name="bottom.container" as="bottomContainer" translate="label">
                <label>Page Footer</label>
                <action method="setElementClass"><value>bottom-container</value></action>
            </block>
            <block type="page/switch" name="store_switcher" as="store_switcher" template="page/switch/stores.phtml"/>
            <block type="page/template_links" name="footer_links" as="footer_links" template="page/template/links.phtml"/>
        </block>

完美! 但是,我在页脚之前需要这个块,而不是在里面...... 我该怎么做???

谢谢!

【问题讨论】:

    标签: magento content-management-system block


    【解决方案1】:

    打开您的 Page.xml 文件并找到以下块

    <block type="page/html_footer" name="footer" as="footer" template="page/htmlfooter.phtml">
    

    它应该在第 100 行。

    在块内粘贴以下代码

    <block type="reports/product_viewed" name="reports.product.viewed" as="recently_viewed" template="reports/product_viewed.phtml">
        <action method="setColumnCount"><columns>4</columns></action>
        <action method="setItemLimit"><type>recently_viewed</type><limit>4</limit></action>
    </block>
    

    块应该是这样的 现在打开您的 footer.phtml 文件和页脚之前,即

    <div class="footer-container">
    

    编写如下代码

    <?php echo $this->getChildHtml('recently_viewed') ?>
    

    并更改子块调用如下 现在任何登录的用户都可以查看他们最近查看的产品,是的,它在页脚之外。 您可以根据需要对其进行样式设置,也可以从块本身设置列数。 享受吧。

    【讨论】:

    • 嘿!谢谢你的回答。最近查看的保留在页脚内。 (div class="footer-container")
    • 你可以在任何你想要的地方调用 getChildHtml('recently_viewed') ?>。您可以将其保留在页脚内。 (div class="页脚容器")。如果你觉得这个答案有帮助,那么请接受这个答案:D
    • 检查我发布的footer.phtml 的图片。您必须更改子块的调用,如第二张图片所示。
    【解决方案2】:

    尝试将其添加到“页脚”部分的正上方:

    <block type="core/text_list" name="review.before.footer" as="review.before.footer" translate="label">
           <block type="reports/product_viewed" before="right.permanent.callout" name="right.reports.product.viewed" template="reports/product_viewed.phtml" />
    </block>
    

    【讨论】:

    • 您是否刷新了缓存,如果是,您是否在模板中回显任何内容? (也许模板正在工作,但逻辑没有显示任何内容)
    • 是的,我禁用了缓存进行测试
    猜你喜欢
    • 2015-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-22
    • 2011-02-17
    • 2019-12-02
    • 2021-05-26
    • 1970-01-01
    相关资源
    最近更新 更多