我是 Magento 的新手。我想在页脚中添加时事通讯选项并在页脚中设置时事通讯功能。
3 回答
我想您谈到了将其放置在模板中的新闻通讯块。一个解决方案是在您的主题中创建一个 local.xml 布局文件。
例如,您的主题位于 /app/design/frontend/default/mytemplate/layout/local.xml
local.xml 的优势在于允许您覆盖自己模板的核心布局结构,而无需复制基本模板的整个 newsletter.xml 布局文件。
也许您需要删除通讯块的先前位置。我在下面给你一个例子。
在这个 local.xml 文件中,您可以执行以下操作:
<?xml version="1.0"?>
<layout version="0.1.0">
<!--
Default layout, loads most of the pages
-->
<default>
<remove name="left.newsletter" /> <!-- if you want to remove the newsletter block which is on the left side -->
<!-- Mage_Newsletter -->
<reference name="footer">
<block type="newsletter/subscribe" name="newsletter" as="newsletter" template="newsletter/subscribe.phtml" before="-" />
</reference>
</default>
</layout>
然后,在您的 footer.phtml 中,您应该添加以下内容:
<?php echo $this->getChildHtml('newsletter'); ?>
只需在您的footer.phtml 中添加以下单行。
<?php echo $this->getLayout()->createBlock('newsletter/subscribe')->setTemplate('newsletter/subscribe.phtml')->toHtml(); ?>
您也可以在后端使用静态块来执行此操作,而无需靠近应用程序代码。我认为最好这样做,以防 Magento 或扩展更新覆盖编辑。
第1步
从商店的管理员/后端转到顶部的“CMS”导航菜单并选择“静态块”。单击“添加新”按钮。在随后的表格中,为“块标题”和“标识符”指定一个唯一的名称,并确保其状态设置为启用。将以下代码放入“内容”文本区域...
{{block type="newsletter/subscribe" name="left.newsletter" template="newsletter/subscribe.phtml"}}
记下您为“标识符”输入的名称,因为您将在下一步中使用它。
单击“保存块”按钮。
第2步
现在转到 CMS 和“页面”或“静态块”,具体取决于您要放置时事通讯的位置。选择“内容”选项卡和文本区域,然后将此代码添加到要显示时事通讯注册表单的任何位置...
{{block type="cms/block" block_id="your_block_identifier"}}
确保将创建静态块时使用的标识符的名称放入block_id