gpt4 book ai didi

magento - 在Magento中,我可以仅通过xml向 header 添加静态 block 吗?

转载 作者:行者123 更新时间:2023-12-02 12:20:32 25 4
gpt4 key购买 nike

我尝试尽可能仅使用 local.xml 自定义主题。我想在不修改 header.phtml 的情况下向 header 添加静态 block 。此代码适用于内容区域,但不适用于标题:

<default>
<reference name="content">
<block type="cms/block" name="how-it-works-button">
<action method="setBlockId"><block_id>how-it-works</block_id></action>
</block>
</reference>
</default>

有人知道为什么吗?我以为我需要的只是将“内容”更改为“标题”,但当我这样做时什么也没有显示。

感谢您的帮助!

最佳答案

content block 是一个特殊的 block ,称为 core/text_list block (PHP 类 Mage_Core_Block_Text_List)。这些 block 将自动渲染出添加到其中的任何子 block 。

另一方面,header block 是一个 page/html_header block (PHP 类 Mage_Page_Block_Html_Header)。该方 block 类继承自Mage_Core_Block_Template,使其成为core/template方 block 。如果相应的 phtml 模板请求该 block ,模板 block 将渲染子 block 。因此,通过将 block 添加到 header ,您只完成了所需工作的一半。 您需要创建自定义 phtml 模板

执行此操作的最简单方法(1.4.1.1 后)是在您自己的主题中创建一个文件

template/page/html/header.phtml

然后在此文件末尾添加

<?php echo $this->getChildHtml('how-it-works-button'); ?>

假设您已通过布局 xml 将 block 添加到 header block ,这应该会呈现您的模板。

关于magento - 在Magento中,我可以仅通过xml向 header 添加静态 block 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6946482/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com