您的位置:首页 > 其它

16. Magento模板及布局文件中引用Static Block的方法

2015-07-21 13:57 531 查看
Static Block是Magento提供的非常实用的一种Block类型。通过Static Block,可以让不懂代码的店铺管理员轻易修改网站中的一些动态内容,而不需要修改Magento的核心代码。Magento Static Block的创建相当简单,通过后台CMS->Static Block即可查看或新建Static Block。建立完毕之后,可以在任意的Magento页面添加该段代码。

本文从创建Static Block开始讲起,然后包括在布局文件,模板文件及CMS页面中添加创建的Static Block。最后,通过这些知识,运用到实际的Magento模版开发当中,我们讲述如何在Magento的首页添加一个幻灯片。

创建Static Block

在后台菜单cms–>static block位置,新建立一个static block,如下图,并根据如下提示,了解每个域的大致作用。



Block Title:随便填写,方便识别位置与作用

Identifier:全局唯一,用于在模板或布局文件中调用

Store View:可见、可调用范围

Content:这里只需要填写HTML代码即可,没有太特殊的东西。值得注意的是这里引用图片,添加链接的方式。

添加图片方式,

<img src=”{{media url=”home_banner.jpg”}}” alt=”” width=”950″ height=”280″ />


添加链接方式

<a href=”{{store url=’customer/account/login/’}}”>Login</a>


在布局文件中添加Static Block

Static Block在CMS菜单下,其统一的Block类型是type=”cms/block”,在布局文件中看到的此类Block一律是在CMS下的Static Block中定义的。Static Block在布局文件中的添加方式如下。

<block type="cms/block" name="block_name">
<action method="setBlockId">
<id>block_id</id>
<action>
</block>


< id>标签内的值即在创建Static Block时填写的Identifier。另外这里定义了block的name属性,用于在模板文件中通过getChildHtml()方法引用该Static Block。



在模板文件中调用Static Block

在模板文件中调用Static Block有两种方法。

a)第一种是通过getChildHtml()方法调用,使用该方法的前提是在布局文件中,需要调用的Static Block已经在某一个Block内形成了父子关系,然后可以在父Block中使用getChildHtml()方法。

echo $this->getChildHtml('block_name')


b)第二种方法是在模板文件中使用createBlock()创建一个Block,然后再将Static Block赋予新创建的Block,然后toHtml()输出。使用该种方法不需要在布局文件中提前引用该Static Block。

echo $this->getLayout()->createBlock('cms/block')->setBlockId('foot_links')->toHtml()




在CMS页面添加Static Block

在CMS页面中添加Static Block同样非常简单,上面提到过所有的Static Block都属于cms/block类型,name属性可以随便取,建议保持一定的相关性,并且全局唯一,block_id属性即建立Static Block时填写的identifier。

{{block type=”cms/block” name=”cms_test_block” block_id=”order_form”}}




/article/3741682.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: