Magento Block的三种显示方式
1。最常见的一种方式:在layout文件中配置,然后在.phtml模板文件中输出。
<cms_page>
<reference name="content">
<block type="cms/page" name="cms_page">
</block></reference>
<!-- 下面是新增的Magento Block -->
<block type="catalog/product_new" name="home.catalog.product.new" alias="product_homepage_new" template="catalog/product/new.phtml" after="default_home_page"></block>
</cms_page>
echo $this->getLayout()->getBlock('home.catalog.product.new')->toHtml();
这种方式是Magento中推荐的标准方法。另外,也可以在后台 [Admin]->[CMS]->[Manage Pages]->[Home]->[Custome Design]->[Layout Update XML]中配置block xml。
2。不用在layout文件中配置,直接用PHP代码来创建block,并输出。
$layout = $this->getLayout();
$type = 'catalog/product_new';
$attributes = array(
'type' => 'catalog/product_new',
'name' => 'home.catalog.product.new',
'alias' => 'product_homepage_new',
'template' => 'catalog/product/new.phtml'
);
$block = $layout->createBlock($type, null, $attributes);
echo $block->toHtml();
3。出现在Magento邮件模板中,或自定义内容中的Magento标签:
{{block type="catalog/product_new" name="home.catalog.product.new" alias="product_homepage_new" template="catalog/product/new.phtml"}}