ButterBean是一个可分组的自定义字段管理插件,类似于WooCommerce商品属性。

Wordpress2年前 (2023)发布 SUYEONE
645 0 0

ButterBean是一款专为WordPress设计的自定义字段管理插件,旨在优化和整理大量自定义字段,特别是对于具有众多此类字段的文章类型。通过采用选项卡式布局,它使得MetaBox的管理更为有序,提升了用户在输入自定义字段时的逻辑性和便利性。WooCommerce的 商品字段管理界面也是基于类似的理念来设计的。

要使用ButterBean,首先需要安装该插件。如果不想将其作为标准插件,可将ButterBean文件夹复制到主题目录,并加载butterbean.php文件,如下所示:

“`php
add_Action( ‘plugins_loaded’, ‘th_load’ );
function th_load() {
require_once(‘path/to/butterbean/butterbean.php’);
}
“`
接下来,你可以利用`butterbean_register`钩子注册自定义管理器、部分、控件和设置。回调函数会接收$butterbean对象和当前文章类型$post_type:

“`php
add_action(‘butterbean_register’, ‘th_register’, 10, 2);
function th_register($butterbean, $post_type) {
// 只对特定文章类型执行
if (‘your_post_type’ !== $post_type) return;

// 注册管理器、部分、控件和设置
}
“`

在ButterBean中,管理器是多个部分和控件的集合,类似于元盒。可以创建多个管理器,如:

“`php
$butterbean->register_manager(‘example’, array(
‘label’ => esc_htML__(‘Sample Data‘, ‘your-textdomAIn’),
‘post_type’ => ‘post’,
‘context’ => ‘normal’,
‘priority’ => ‘high’
));
$manager = $butterbean->get_manager(‘example’);
“`

接着,创建自定义部分(区域),这部分可以看作是选项卡,拥有自己的标签、描述和图标:

“`php
$manager->register_section(‘section_1’, array(
‘label’ => esc_html__(‘Dataset 1’, ‘your-textdomain’),
‘icon’ => ‘dashicons-admin-generic’
));
“`

然后,定义自定义控件,这些控件是用户输入自定义字段数据的地方,有多种表单类型供选择:

“`php
$manager->register_control(‘abc_xyz’, array(
‘type’ => ‘text’,
‘section’ => ‘section_1’,
‘label’ => esc_html__(‘Text1’, ‘your-textdomain’),
‘attr’ => array(‘class’ => ‘widefat’)
));
“`

最后,创建自定义设置,定义数据的保存方式,包括验证和净化数据的回调函数:

“`php
$manager->register_setting(‘abc_xyz’, array(
‘sanitize_callback’ => ‘wp_filter_nohtml_kses’
));
“`

对于需要处理大量自定义字段的复杂WordPress主题或插件开发者来说,ButterBean是一个强大的工具,可以极大地改善用户在输入自定义字段时的体验。尝试使用它,你的项目将变得更加整洁和高效。

© 版权声明

相关文章

暂无评论

暂无评论...
☺一键登录开启个人书签等功能!