alexis-magina/cmb2-field-post-search-ajax

CMB2 字段类型,可以将帖子相互关联。使用 Ajax 进行搜索。

1.1.3 2017-03-27 08:47 UTC

This package is not auto-updated.

Last update: 2024-09-14 20:21:09 UTC


README

用于将帖子相互关联的 CMB2 自定义字段。

CMB2 附着帖子字段 相同的方法,使用 Ajax 请求、多选/单选选项和不同的 UI。

安装

您可以将此字段类型安装得像 WordPress 插件一样。

  • 下载插件
  • 将插件文件夹放在您的 /wp-content/plugins/ 目录中
  • 在插件仪表板中激活插件

Composer 安装

composer require alexis-magina/cmb2-field-post-search-ajax:dev-master

用法 - 管理员

请参考 example-field-setup.php 中的示例进行演示。

选项

  • limit (整数,默认 = 1:单选) : 限制可选帖子数量
  • sortable (布尔值,默认 = false) : 允许对选定的帖子进行排序
  • query_args (数组) : 设置 Ajax 搜索查询:传递 wp_query 参数数组。

过滤器:(自 1.1.2 起可用) 可过滤 Ajax 结果以自定义返回的文本和帖子值。使用过滤器 "mag_cmb_post_search_ajax_result",例如

function example_callback( $arr ) {
	// $arr['data'] : contains post_id
	// $arr['guid'] : contains admin edit post url
	// $arr['value'] : contains post title
	$arr['value'] = 'Custom string '.$arr['value'];
    return $arr;
}
add_filter( 'mag_cmb_post_search_ajax_result', 'example_callback' );

用法 - 前端

您可以使用 get_post_meta( get_the_ID(), 'your_field_id', true ); 获取元数据。

如果字段限制 > 1,这将返回关联帖子 ID 的数组。如果字段限制 == 1,则仅返回单个关联帖子 ID。

屏幕截图

example

变更日志

1.0.0

  • 初始提交

1.1.0-sebask

  • 添加了一个函数,允许从除 WordPress 插件文件夹以外的位置使用 CMB2 Field Post Search Ajax。

1.1.1-sebask

  • 修复了一个小错误,该错误导致使用了未定义的常量。

1.1.2

  • 修复了问题 #2:无法删除限制 = 1 的字段的值
  • 添加了类存在检查(问题 #3)
  • 添加了一个过滤器 "mag_cmb_post_search_ajax_result",允许自定义 Ajax 结果
  • 修复了一个小错误,该错误导致自动完成结果中的编码字符问题

1.1.3

  • 添加了对用户查询的支持
  • 修复了问题 #11:排序问题
  • 修复了与 ui-autocomplete 的冲突

1.1.4-sebask

  • 修复了问题 #14:安全模式与 jquery-ui-autocomplete 和 devbridge/jQuery-Autocomplete 的兼容性。

1.1.5

  • 修复了问题 #17:如果字段为空,则未定义索引