2016-08-15 90 views
0

所以我一直在寻找这里和其他网站的解决方案。我发现了很多真正有帮助的帖子,但由于某种原因,我不能让这个工作。WP_Query过滤

我有什么: 带有自定义字段的WP帖子。 一个是给予1-5 之间的数字“等级”另一个是“闪”选配1或0

我想要做什么: 显示与闪光灯1的所有帖子,在由“等级”降序排列...

我目前有:

$args = array(
        'posts_per_page' => 11, 
        'post_status'  => 'publish', 
        'meta_key'   => 'rating', 
        'orderby'   => 'meta_value_num', 
        'order'    => 'DESC', 
        'meta_query'  => array(
         'meta_key'   => 'flash', 
         'meta_value'  => '1', 
        ) 
       ); 
       $ultimos = new WP_Query($args); 

这不会过滤闪光灯的自定义字段。然而 如果我这样做:

$args = array(
        'posts_per_page' => 11, 
        'post_status'  => 'publish', 
        'meta_key'   => 'rating', 
        'orderby'   => 'meta_value_num', 
        'order'    => 'DESC', 
        'meta_key'   => 'flash', 
        'meta_value'  => '1', 
       ); 
       $ultimos = new WP_Query($args); 

这并过滤闪光灯,但不正确排序。

有什么想法?

回答

-1

我相信你需要看看使用WP_Query的关系特点:https://codex.wordpress.org/Class_Reference/WP_Query

$args = array( 'posts_per_page' => 11, 'post_status' => 'publish', 'meta_key' => 'rating', 'orderby' => 'meta_value_num', 'order' => 'DESC', 'meta_query' => array( 'relation' => 'OR', array( 'key' => 'flash', 'value' => '1', 'compare' => 'LIKE', ), ); $ultimos = new WP_Query($args);

+0

嘿,这并获得成功!谢谢! 我只需要将OR更改为AND即可完美工作 –