到目前为止emlog都没有集成模板后台设置功能,可能是和emlog一直走轻量级路径有关。但是集成模板后台配置功能,无论是对emlog模板开发者还是用户来说,其作用都非常大,可以使一些模板功能不需要修改模板文件就可以改变设置,减少开发者的服务时间的同时节约用户的使用成本。
emlog模板设置插件tpl_options是一款可以让模板集成后台配置功能的插件,只要emlog模板按照开发规范制作,就可以通过该插件集成模板后台设置功能。
模板集成插件教程:
1、创建配置文件
在当前使用模板的根目录创建一个options.php文件,添加以下格式的内容,可以任意增加设置项,注意$options变量和注释:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
<?php /*@support tpl_options*/ !defined('EMLOG_ROOT') && exit('access deined!'); $options = array( 'sidebar' => array( 'type' => 'radio', 'name' => '侧边栏位置', 'values' => array( 'left' => '左边', 'right' => '右边' ), 'default' => 'right', ), 'sortIcon' => array( 'type' => 'image', 'name' => '分类图标设置', 'values' => array( TEMPLATE_URL . 'images/star.png', ), 'depend' => 'sort', 'unsorted' => true, 'description' => '给不同的分类设置不一样的小icon,以20×20为宜', ), ); |
2、options.php文件每个参数说明
如上代码的$options数组里:sidebar、sortIcon是设置项的id,每个id不能相同;name是设置项名字,显示在设置界面;value是一个数组,数组里包含若干个元素,这些元素是这个设置项的值;type属性用来指定设置项的类型,支持的类型如下:
- radio: 单选按钮
- checkbox: 复选按钮
- text: 文本
- image: 图片
- page: 页面
- sort: 分类
- tag: 标签
- 对于所有类型,default属性用于指定默认值,当没有指定default时,使用values里第一个值,若都没有指定,则会使用奇怪的默认值。
- 对于radio和chexkbox,values属性用来设置各个按钮的值和显示名称。
- 除sort外,均可以指定depend为sort,表示该选项可以根据不同的分类设置不同的值,当指定depend为sort时,可选unsorted属性,为true时,表示包括未分类,为false不包括,默认为true。
- sort和page可设置multi属性为true,表示多选。
- description属性可选,用以描述该选项。
- 若type为text,可设置multi属性为true,表示多行文本,即input和textarea的区别,可选属性rich用以支持富文本,若设置该值,将加载编辑器。
- 若type为sort、page或者tag,且设置了多选,默认值将为空,否则将为第一个该类型的值。
3、模板里调用设置项
设置项的值通过 _g('id')
来获取,使用echo输出,如获取上面示例代码中sidebar的值:
1 |
<?php echo _g('sidebar');?> |
- 使用
_g('sortIcon')
来获取分类icon的全部设置,以分类id为key的数组,使用_g(‘sortIcon.1’)来获取分类id为1(如果存在)的sortIcon。 - 需要注意的是,对于类型为page的,将取到页面id,类型为sort的,将取到分类id,类型为tag的,将取到标签名。
- 若不传递参数,即使用
_g('id')
方法将获取到所有设置项,对于老的模板迁移来的,可以用extract(_g());
来代替原来的加载option文件。
4、安装模板设置插件
下载安装模板设置插件后,在网站后台——插件中启用“模板设置”插件,在后台——模板中,当前使用的模板就会多出一个“设置”链接,点击即可进入当前模板的后台配置界面。
插件下载:DownLoad
最后:祝大家国庆节快乐!
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/248230.html