2011-11-17 30 views
2

我想在内容区的主页上制作一个新闻订阅框,为此我制作了一个CMS页面,其中我已经放入新闻订阅文件中的其他代码也可以调用。如何在cms/content_home.phtml上调用newsletter/subscribe.phtml?

我想这样称呼它:

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

但它不会显示出来。

为什么?

+0

正在使用的Magento版本1.6 – atif

回答

11
system -> configuration -> advanced 

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

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

如果你看一下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> 

您可能需要发挥它周围让它出现在你想要的地方,但这应该起作用。

+0

我知道,我们通常做的驾驶室,在这两种方式,你提到一个另我曾上面提到的,但现在的仪式我没有得到它在Magento 1.6两种方式:(唐'不知道为什么 – atif

+0

为什么没有在网上的某些地方这些东西flippin完整的参考?我坚持与magento模板创建了一个多星期了。足够的搜索代码片段在论坛:( –

相关问题