WordPress 搜索支持自定义字段数据

张子凡 WordPress优化 2020-07-08 15:12:56 阅读(...) 评论(4)

WordPress 搜索功能非常的简单简洁,使用起来也非常便捷,搜索时默认就只能检索 WordPress 的文章标题和内容,而且也不支持模糊搜索,所以有时候也显得比较鸡肋,但是 WordPress 强大的二次开发能力,我们可以通过开发在增强一下搜索功能。

WordPress Search 搜索

在做百度专业问答与其他搜索引擎问答时,可能都会存在多标题的情况下,简单的说就是一篇文章可能需要适配多个标题,而当网站积累的数据内容多起来以后,想要检索通过 WordPress 文章自定义字段添加的多标题就没法直接找到了,这时候就显得非常的尴尬了,那么子凡为了给编辑偷懒,特地二开一下 WordPress 的搜索功能。

1
2
3
4
5
6
7
8
9
10
//WordPress 搜索支持自定义字段数据
add_action('posts_search', function($search, $query){
	global $wpdb;
	if ($query->is_main_query() && !empty($query->query['s'])) {
		$sql = " OR EXISTS (SELECT * FROM {$wpdb->postmeta} WHERE post_id={$wpdb->posts}.ID and meta_key = 'Headline' and meta_value like %s)";
		$like = '%' . $wpdb->esc_like($query->query['s']) . '%';
		$search .= $wpdb->prepare($sql, $like);
	}
	return $search;
},2,2);

以上就是子凡用于来支持 WordPress 搜索文章自定义字段数据的代码,如果你要使用或者用于检索自定义字段,需要修改以上代码中的“Headline”为自己自定义字段的 key。

源代码出自:我爱水煮鱼

更多关于WordPress优化及疑问可以添加QQ群:255308000

除非注明,否则均为泪雪博客原创文章,禁止任何形式转载

本文链接:https://zhangzifan.com/wordpress-search-support-post-meta.html

留言评论

登录 后留言