phpcms中碎片用法
在给客户定制模板的时候,往往会涉及到的一个问题就是:有些数据(图片文字,比如LOGO、侧栏的联系方式、首页的幻灯片切换Banner等)客户往往需要后台自定义修改,那么这些地方怎么做到后台DIY呢?
之前我们用的最多的方法是广告调用,因为Phpcms V9的广告位可以实现图片、文字、代码等多方式调用,基本上都可以实现这一要求,后台定义U广告位、前台调用出来,管理起来也灵活。
但是,有没有更好的方法?比如直观的、图形化的,更加方便看不懂代码的客户管理呢?有的,那就是Phpcms V9的碎片管理,
首先介绍下Phpcms V9碎片管理的功能:
PHPCMS自带的碎片系统,可以让你随时添加新的内容而不用修改模板,保证您的网站内容发布的及 时性。
碎片管理的具体位置:
下面引用PC官方关于碎片工具箱的介绍:
PHPCMS V9中依然保留了PHPCMS 2008中的碎片功能。
{pc:block pos="index"}{/pc}
以上的代码可以调用碎片功能。
参数对照表
参数 | 默认值 | 必须 | 说明 |
pos | null | 是 |
碎片位置标识
|
1、在写模板的时候,把pc:block的标记添加到需要自定义的地方。
<div id="logo"><a href="{APP_PATH}" title="{$SITE[$siteid][name]}">{pc:block pos="logo"}{/pc}</a></div>
上面一段代码的意思,就是在div#logo里边,添加一个名为logo的碎片标记。
2、在后台管理,位置:后台》内容》内容发布管理》碎片管理,点击树形菜单,找到对应的碎片标记位置,点击高亮区域编辑。如下图:
3、编辑完毕之后保存,到前端查看是否更新,如果设置了HTML静态化,需要手动更新HTML。
以上是V9自带碎片管理的具体使用方法。下面分享一个小技巧:
专题或者搜索页面的模板,有可能会调用不出来pc:block标记,有什么办法?
这是因为缓存数据没有加载,只需要调用之前加上:
{php $blockid = 'special_'.$specialid.'_1';}