iniznet / cmb-field-select2
CMB2的Select2字段类型
v3.0.3
2016-08-25 15:52 UTC
This package is auto-updated.
Last update: 2024-09-23 16:20:54 UTC
README
描述
Select2字段类型,用于CMB2。
此插件提供了基于Select2的两种额外字段类型
pw_select
字段类似于默认的select
字段。然而,它增加了类似自动补全的搜索功能,允许您快速从大量列表中选择pw_multiselect
字段允许您通过类似自动补全的搜索选择多个值。值可以被拖放以重新排序
安装
您可以通过像安装WordPress插件一样安装此字段类型
- 下载插件
- 将插件文件夹放在您的
/wp-content/plugins/
目录下 - 在插件仪表板上激活插件
或者,您可以将此字段类型包含在您的插件/主题中。前端资源(JS/CSS)的路径可以使用pw_cmb2_field_select2_asset_path
过滤器。请参阅我们如何从当前激活的主题中加载资源的示例。
使用
pw_select
- 带有自动补全搜索的复选框。示例
$cmb->add_field( array( 'name' => 'Cooking time', 'id' => $prefix . 'cooking_time', 'desc' => 'Cooking time', 'type' => 'pw_select', 'options' => array( '5' => '5 minutes', '10' => '10 minutes', '30' => 'Half an hour', '60' => '1 hour', ), ) );
pw_multiselect
- 可拖放重新排序的多值复选框。示例
$cmb->add_field( array( 'name' => 'Ingredients', 'id' => $prefix . 'ingredients', 'desc' => 'Select ingredients. Drag to reorder.', 'type' => 'pw_multiselect', 'options' => array( 'flour' => 'Flour', 'salt' => 'Salt', 'eggs' => 'Eggs', 'milk' => 'Milk', 'butter' => 'Butter', ), ) );
占位符
您可以通过属性数组指定占位符文本。示例
$cmb->add_field( array( 'name' => 'Ingredients', 'id' => $prefix . 'ingredients', 'desc' => 'Select this recipes ingredients.', 'type' => 'pw_multiselect', 'options' => array( 'flour' => 'Flour', 'salt' => 'Salt', 'eggs' => 'Eggs', 'milk' => 'Milk', 'butter' => 'Butter', ), 'attributes' => array( 'placeholder' => 'Select ingredients. Drag to reorder' ), ) );
自定义Select2配置和覆盖默认配置选项
您可以使用HTML5 data-*
属性定义Select2配置选项。建议您阅读Select2网站上关于可用选项的资料。示例
$cmb->add_field( array( 'name' => 'Ingredients', 'id' => $prefix . 'ingredients', 'desc' => 'Select ingredients. Drag to reorder.', 'type' => 'pw_multiselect', 'options' => array( 'flour' => 'Flour', 'salt' => 'Salt', 'eggs' => 'Eggs', 'milk' => 'Milk', 'butter' => 'Butter', ), 'attributes' => array( 'data-maximum-selection-length' => '2', ), ) );
辅助函数
您可能想要动态填充选项数组。常见的用例包括列出文章和分类术语。我已经编写了一些通用辅助函数,可以用于返回适用于文章和术语的CMB2样式数组。
限制/已知问题
如果您想帮忙,欢迎提交拉取请求!
- 此字段在可重复组中作为可重复字段效果不佳。
- Yoast SEO也加载Select2。目前版本落后,存在Select2前一个版本和其相对于字段定位能力的问题。