Magento中,调用静态块的几种方法

在后台创建一个order_form静态块
Block Title :Order Form
Identifier :order_form
Status :Enabled
Content :自定义内容

1.如果要在.phtml文件中直接调用这个静态块,那可以采用以下方法

[php] view plaincopy

  1. <?php
  2. $block = Mage::getModel(‘cms/block‘)
  3. ->setStoreId(Mage::app()->getStore()->getId())
  4. ->load(‘order_form‘);
  5. $content = $block->getContent(); // Block的原始内容已经获得
  6. $processor = Mage::getModel(‘core/email_template_filter‘);
  7. echo $html = $processor->filter($content);
  8. ?>

Mage::getModel(‘core/email_template_filter‘)->filter()是必须的,因为Static Block里可能包含Magento的模板语言(如:{{store url=""}}),fiter将翻译成实际的值
Magento中调用静态Block主要有两个地方。
是否感觉这代码太长了呢,那你还可以这么写

[php] view plaincopy

  1. <?php echo $this->getLayout()->createBlock(‘cms/block’)->setBlockId(‘order_form‘)->toHtml() ?>

2.如何在CMS页面的Content中调用这个静态块呢?你可以采用以下方法

[php] view plaincopy

  1. {{block type="cms/block"  name="cms_test_block"  block_id="order_form" }}

将里面order_form改成你的静态块对应的block_id则可

3.怎么样在layout中调用静态块呢?

[xhtml] view plaincopy

  1. <reference name="footer">
  2. <block type="cms/block" name="order_form" before="-">
  3. <action method="setBlockId"><block_id>order_form</block_id></action>
  4. </block>
  5. </reference>

到此,你应该能够灵活的运用magento中的静态块了吧!

时间: 2024-12-08 16:00:34

Magento中,调用静态块的几种方法的相关文章

Magento中,调用静态块的几种方法[magento 二次开发]

在后台创建一个order_form静态块 Block Title :Order Form Identifier :order_form Status :Enabled Content :自定义内容 1.如果要在.phtml文件中直接调用这个静态块,那可以采用以下方法 [php] view plaincopy <?php $block = Mage::getModel('cms/block') ->setStoreId(Mage::app()->getStore()->getId()

a 中调用js的几种方法

我们常用的在a标签中有点击事件:1. a href="javascript:js_method();" 这是我们平台上常用的方法,但是这种方法在传递this等参数的时候很容易出问题,而且javascript:协议作为a的href属性的时候不仅会导致不必要的触发window.onbeforeunload事件,在IE里面更会使gif动画图片停止播放.W3C标准不推荐在href里面执行javascript语句 2. a href="javascript:void(0);"

a 标签中调用js的几种方法

我们常用的在a标签中有点击事件:1. a href="javascript:js_method();" 这是我们平台上常用的方法,但是这种方法在传递this等参数的时候很容易出问题,而且javascript:协议作为a的href属性的时候不仅会导致不必要的触发window.onbeforeunload事件,在IE里面更会使gif动画图片停止播放.W3C标准不推荐在href里面执行javascript语句 2. a href="javascript:void(0);"

[转]a 标签中调用js的几种方法

我们常用的在a标签中有点击事件:1. a href="javascript:js_method();" 这是我们平台上常用的方法,但是这种方法在传递this等参数的时候很容易出问题,而且javascript:协议作为a的href属性的时候不仅会导致不必要的触发window.onbeforeunload事件,在IE里面更会使gif动画图片停止播放.W3C标准不推荐在href里面执行javascript语句 2. a href="javascript:void(0);"

struts中调用servlet的两种方法——IcC方式和非IoC方式的代码demo

1 package com.java1234.action;//所在的包 2 3 import java.sql.Connection;//数据库连接的类 4 import java.util.ArrayList;//ArrayList和List是在private List<DataDic> dataDicList=new 5 6 ArrayList<DataDic>();中用到 7 import java.util.List;//ArrayList和List是在private L

spring在xml文件中配置bean的三种方法

一.最常见,也是缺省,是调用spring的缺省工厂类 spring缺省工厂类:org.springframework.beans.factory.support.DefaultListableBeanFactory使用其静态方法preInstantiateSingletons() 配置文件中最普通最基本的定义一个普通bean<bean id="DvdTypeDAOBean" class="com.machome.dvd.impl.DvdTypeDAO" >

[转]Delphi调用cmd的两种方法

delphi调用cmd的两种方法vars:string;begins:='cmd.exe /c '+edit1.Text+' >c:\1.txt';winexec(pchar(s),sw_hide);sleep(2000);memo1.Lines.LoadFromFile('c:\1.txt'); 2shellexecute(handle,nil,'cmd.exe',pchar(form2.edit1.text),nil,sw_hide);WinExec主要运行EXE文件.如:WinExec(’

Shell脚本中调用另外一个脚本的方法

在Linux平台上开发,经常会在console(控制台)上执行另外一个脚本文件,经常用的方法有:./my.sh 或 source my.sh 或 . my.sh:这三种方法有什么不同呢?我们先来了解一下在一个shell脚本中如何调用另外一个shell脚本,其方法有 fork    exec    source. 1.fork  ( /directory/script.sh) : 如果shell中包含执行命令,那么子命令并不影响父级的命令,在子命令执行完后再执行父级命令.子级的环境变量不会影响到父

C#中datatable导出excel(三种方法)

方法一:(拷贝直接可以使用,适合大批量资料, 上万笔)Microsoft.Office.Interop.Excel.Application appexcel = new Microsoft.Office.Interop.Excel.Application();SaveFileDialog savefiledialog = new SaveFileDialog();System.Reflection.Missing miss = System.Reflection.Missing.Value;ap