使用简单字段的热门帖子的WP查询

时间:2015-03-02 作者:Janith Chinthana

我使用简单字段插件添加了一个字段(高级帖子),现在我需要更改流行的帖子小部件。我需要得到所有流行的职位排除溢价职位。

到目前为止我所做的,

原始查询,

$popularposts = new WP_Query(\'showposts=5&meta_key=post_views_count&orderby=meta_value_num&order=DESC&ignore_sticky_posts=1\')
已编辑的查询,

$args1 = array(
    \'showposts\' => 5,
    \'ignore_sticky_posts\' => 1,
    \'meta_query\' => array(
        array( \'key\' => \'post_views_count\', \'orderby\' => \'meta_value_num\', \'order\' => DESC ),
        array( \'key\' => \'_simple_fields_fieldGroupID_2_fieldID_1_numInSet_0\', \'compare\' =>\'NOT EXISTS\' ),
    ),
);
$popularposts = new WP_Query($args1);
但它不能提供预期的结果,它排除了高级职位(字段:_simple_fields_fieldGroupID_2_fieldID_1_numInSet_0) 但它不是按post_view_counts.

任何帮助都将不胜感激。。

2 个回复
最合适的回答,由SO网友:cybmeta 整理而成

正确的查询是:

$args1 = array(
    \'showposts\'           => 5,
    \'ignore_sticky_posts\' => 1,
     //ORDER ARGUMENTS
    \'meta_key\'            => \'post_views_count\',
    \'orderby\'             => \'meta_key_num\',
    \'order\'               => \'DESC\',
    //META QUERY
    \'meta_query\' => array(
        array(
            \'key\'     => \'_simple_fields_fieldGroupID_2_fieldID_1_numInSet_0\',
            \'compare\' =>\'NOT EXISTS\' ),
    ),
);
$popularposts = new WP_Query($args1);
订单总是在外面meta_query, 请参见codex.

SO网友:Pieter Goosen

不能在内部排序meta_query. 排序参数在中无效meta_query.

您需要将排序参数移动到meta_query 记住设置meta_key 将用于排序

参考文献:

结束

相关推荐

使用新的WP-Query()从循环中过滤后期格式;

嗨,我目前正在为我的博客构建一个主题。下面的代码指向最新的帖子(特色帖子)。因为这将有一个不同的风格比所有其他职位。然而我想过滤掉帖子格式:链接使用我在循环中定义的WP查询,因为它给我带来了更多的灵活性。我该怎么做呢? <?php $featured = new WP_Query(); $featured->query(\'showposts=1\'); ?> <?php while ($featured->have_post