WordPress 技巧:让搜索支持自定义字段

发布时间:2018-07-18 17:48:24

作为电商系统,商品的最重要的属性就是商家编码,以后进行一些店铺之间商品复制操作,甚至做供应量,也是需要靠这个属性来进行操作。商家编码,我们一直做为自定义字段,存在 post meta 中,而 WordPress 默认的搜索是不支持 post meta 的,所以根据商家编码搜索商品的功能:

方法非常简单,只需要下面代码就可:

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 = 'product_no' and meta_value like %s)";
		$like	= '%' . $wpdb->esc_like($query->query['s']) . '%';

		$search	.= $wpdb->prepare($sql, $like);
	}
	return $search;
},2,2);

如果你需要相关的功能,只需要将上面的商家编码的字段“product_no”替换成你所需的相关字段即可。

相关文章

写给所有做网站的朋友的一封信

写给所有做网站的朋友的一封信

现在就开始执行“1+N”营销推广和没有开始执行的人,一两天看不出任何区别; 一两个月看来差异也是微乎其微的;但在2-5年的长远时间来看的时候,你的高质 量询盘不断增加,你的互联网资产已经建立完成,对手已经很难匹敌,现在你看到这段文字的时候就是最好的开始,现在就是最好的时候,马上开始“1+N”体系的整体营销推广吧,我们和你一起,开创互联网营销大未来!

点击查看详情

准备开启WordPress网站建设推广?

我们相信高端漂亮的网站不应该是昂贵的,这就是wordpress对每个人都是免费的原因
wordpress建站免费入门,并提供价格合理的wordpress建站套餐。