我看到很多开发zibll子比主题周边插件的,都在使用zibll子比主题的后台配置框架
但是我发现大家用法都不对
我看了几个插件都是把主题的codestar-framework
文件夹内容全部拷贝到自己的插件里面了
这是不对的,正确的做法是:所有需要使用zibll主题函数的地方,都放进钩子里面就行了。(不需要复制任何zibll文件)
例如:我们需要使用zibll子比主题CSF框架函数用于创建后台配置项目,那么我们把这些函数放进自己的钩子函数内,挂上zib_require_end
钩子即可。
示例代码:
//插件后台设置
function xxx_create_admin_options()
{
//只有后台才执行此代码
if (!is_admin()) {
return;
}
$prefix = 'xxx_options'; //必须为唯一值,不能与其他主题或插件重复
//开始构建后台配置
CSF::createOptions($prefix, array(
'menu_title' => 'XXX设置',
'menu_slug' => $prefix,
'framework_title' => 'XXX设置',
'show_in_customizer' => false, //在wp-customize中也显示相同的选项
'footer_text' => '更优雅的wordpress主题-XXX主题',
'footer_credit' => '<i class="fa fa-fw fa-heart-o" aria-hidden="true"></i> ',
'theme' => 'light',
));
CSF::createSection($prefix, array(
'title' => '基础配置',
'icon' => 'fa fa-fw fa-home',
'description' => '',
'fields' => array(
array(
'title' => 'xxx功能',
'id' => 'xxx_s',
'type' => 'switcher',
'desc' => '开启此功能后,xxx功能将会开启',
'default' => true,
),
),
));
//等等...
//csf函数使用示例
//可参考主题的.../zibll/inc/options/admin-options.php文件
}
//挂钩到'zib_require_end',也就是zibll主题文件全部引入后
add_action('zib_require_end', 'xxx_create_admin_options');
举一反三,同理,凡是需要使用zibll主题的函数,只要是在钩子函数内,都是可以直接使用的。
插件开发者们,记得更新一下!