西部数码主机 | 阿里云主机| 虚拟主机 | 服务器 | 返回乐道官网
当前位置: 主页 > php教程 > magento教程 >

Magento调用静态块的几种方法

时间:2014-12-08 11:38来源:未知 作者:好模板 点击:
在后台创建一个order_form静态块 Block Title :Order Form Identifier :order_form Status :Enabled Content :自定义内容 1.如果要在.phtml文件中直接调用这个静态块,那可以采用以下方法 ?php $block = Mage::getM
在后台创建一个order_form静态块
Block Title :Order Form
Identifier :order_form
Status :Enabled
Content :自定义内容
 
1.如果要在.phtml文件中直接调用这个静态块,那可以采用以下方法
 
<?php  
$block = Mage::getModel('cms/block')  
 ->setStoreId(Mage::app()->getStore()->getId())  
 ->load('order_form');  
$content = $block->getContent(); // Block的原始内容已经获得  
  
$processor = Mage::getModel('core/email_template_filter');  
echo $html = $processor->filter($content);  
?>  
 
Mage::getModel('core/email_template_filter')->filter()是必须的,因为Static Block里可能包含Magento的模板语言(如:{{store url=""}}),fiter将翻译成实际的值
Magento中调用静态Block主要有两个地方。
是否感觉这代码太长了呢,那你还可以这么写
 
<?php echo $this->getLayout()->createBlock(‘cms/block’)->setBlockId('order_form')->toHtml() ?>   
 
2.如何在CMS页面的Content中调用这个静态块呢?你可以采用以下方法
 
{{block type="cms/block"  name="cms_test_block"  block_id="order_form" }}   
 
将里面order_form改成你的静态块对应的block_id则可
 
3.怎么样在layout中调用静态块呢?
 
 <reference name="footer">  
    <block type="cms/block" name="order_form" before="-">  
        <action method="setBlockId"><block_id>order_form</block_id></action>  
    </block>      
</reference>   
 
 
到此,你应该能够灵活的运用magento中的静态块了吧!
(责任编辑:好模板)
顶一下
(2)
100%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
热点内容