如何在cms / content_home.phtml上调用newsletter / subscribe.phtml?

时间:2011-11-17 10:11:40

标签: magento-1.4 magento-1.5 magento

我想在内容区域的主页上创建一个新闻订阅框,为此我创建了一个CMS页面,我在新闻稿订阅文件中放置的其他代码也可以调用。

我试着这样称呼它:

<?php echo $this->getLayout()->createBlock('newsletter/subscribe')->setTemplate('newsletter/subscribe.phtml')->toHtml(); ?>

但它没有显示出来。

为什么?

2 个答案:

答案 0 :(得分:11)

system -> configuration -> advanced

从那里启用时事通讯模块。然后你可以使用上面的代码在任何地方调用它。

<?php echo $this->getLayout()->createBlock('newsletter/subscribe')->setTemplate('newsletter/subscribe.phtml')->toHtml(); ?>

答案 1 :(得分:4)

如果查看 newsletter.xml 布局更新文件,您会发现订阅块的定义如下:

<reference name="left">
    <block type="newsletter/subscribe" name="left.newsletter" template="newsletter/subscribe.phtml"/>
</reference>

您可以做的最简单的事情是为您的主页添加类似于布局更新XML的内容。只需在管理员的CMS页面区域中打开主页,单击设计标签,然后将其放在布局更新XML 文本框中:

<reference name="content">
    <block type="newsletter/subscribe" name="home.newsletter" template="newsletter/subscribe.phtml"/>
</reference>

您可能需要使用它来让它显示在您想要的位置,但这应该有效。