Magento Block的三种显示方式
1。最常见的一种方式:在layout文件中配置,然后在.phtml模板文件中输出。
1<cms_page> 2 <reference name="content"> 3 <block type="cms/page" name="cms_page"> 4 </block></reference> 5 6 <!-- 下面是新增的Magento Block --> 7 <block type="catalog/product_new" name="home.catalog.product.new" alias="product_homepage_new" template="catalog/product/new.phtml" after="default_home_page"></block> 8</cms_page> 9 10echo $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,并输出。
1$layout = $this->getLayout(); 2$type = 'catalog/product_new'; 3$attributes = array( 4 'type' => 'catalog/product_new', 5 'name' => 'home.catalog.product.new', 6 'alias' => 'product_homepage_new', 7 'template' => 'catalog/product/new.phtml' 8); 9$block = $layout->createBlock($type, null, $attributes); 10echo $block->toHtml();
3。出现在Magento邮件模板中,或自定义内容中的Magento标签:
{{block type="catalog/product_new" name="home.catalog.product.new" alias="product_homepage_new" template="catalog/product/new.phtml"}}