X5 中自定义自己的设置项
本着将开放进行到底的方针,X5 这次玩个大的,其实也不算太大......
这次讲一讲设置项,写过 Discuz! X 后台的开发者估计都熟悉 showsetting 这个函数。没错,是输出后台表单设置项的函数,他可以根据参数输出 radio、checkbox、textarea、file......(不一一列举了)等等类型的设置项。但是有一件事你想过没有,这么多的设置项依然不满足你的需求,为啥,见下面2个图:
是的,配色需要显示下颜色,甚至直接可以显示多个内容的设置。
是的,在 X5 里你的梦想实现了!
X5 中你可以自定义自己的设置项,我们称呼为设置项组件。
要写一个设置项组件插件,你需要在插件目录 admin/component/ 目录下添加文件。文件名为 component_xxxx.php 格式,内容如下:
按照前几天讲的内容,x5 新规范!命名空间~~懂!?
show(&$var, &$extra) 方法是编辑时需要展示的内容,你只需要把自定义的 HTML 内容写在这里,用下面的方法就可以显示为自定义的设置项组件了对于复杂的设置项,我们还支持进行序列和反序列处理,比如刚才图中的多个 <input>但这时就需要在输入提交入库前用 serializecomponent() 打包序列化一下。
然后~~没了,要不要去试一把先?
这次讲一讲设置项,写过 Discuz! X 后台的开发者估计都熟悉 showsetting 这个函数。没错,是输出后台表单设置项的函数,他可以根据参数输出 radio、checkbox、textarea、file......(不一一列举了)等等类型的设置项。但是有一件事你想过没有,这么多的设置项依然不满足你的需求,为啥,见下面2个图:
是的,配色需要显示下颜色,甚至直接可以显示多个内容的设置。
是的,在 X5 里你的梦想实现了!
X5 中你可以自定义自己的设置项,我们称呼为设置项组件。
要写一个设置项组件插件,你需要在插件目录 admin/component/ 目录下添加文件。文件名为 component_xxxx.php 格式,内容如下:
按照前几天讲的内容,x5 新规范!命名空间~~懂!?
- <?phpnamespace sample\admin;if(!defined('IN_DISCUZ')) { exit('Access Denied');}class component_test { var $name = '自定义颜色';
- showcomponent('测试1', 'abc1', 'yellow', 'sample:component_test');
- // 数据提交入口后进行打包 function serialize($params, &$value) { ... } // 数据重新编辑前进行解包 function unserialize($params, &$value) { ... }
然后~~没了,要不要去试一把先?