wordpress 自定义字段查询 meta_query 参数中使用like和in来进行查询
导语:有时候我们在wordress中可能需要根据自定义字段来进行一次查询,然后得出结果,一般情况下,我们使用等号来进行相等条件的查询,但我们也可以使用like和in来进行查询。下面请看代码示例。
使用IN的代码
$user_ids = array(60, 61, 62, 63);
$args = array(
'post_type' => 'post',
'meta_key' => 'likes',
'post_status' => 'publish',
'posts_per_page' => -1,
'orderby' => 'rand',
'order' => 'ASC',
'meta_query' => array(
array(
'key' => 'likes',
'value' => $user_ids, //array
'compare' => 'IN',
)
)
);
$query = new WP_Query($args);
这里使用了’meta_key’ => ‘likes’对结果进行排序,意思是结果按照自定义的likes字段来进行排序。然后使用 ‘meta_query’来做自定义值的条件查询,likes值在$user_ids的结果都输出来。
或者
$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => -1,
'orderby' => 'rand',
'meta_query' => array(
array(
'key' => 'likes',
'value' => $user_ids,
'compare' => 'IN'
)
)
);
$posts = get_posts($args);
使用LIKE的代码
$args = array(
'meta_query' => array(
array(
'key' => 'my_meta_key',
'value' => serialize(strval($my_id)),
'compare' => 'LIKE'
)
)
);
$posts = get_posts( $args );
这个是对数组进行了序列化。

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