【问题标题】:Order custom wordpress loop订购自定义 wordpress 循环
【发布时间】:2018-11-15 07:06:40
【问题描述】:

我有一个 WordPress 自定义循环,如下所示:

$args = array(  
    'post_type' => 'post',
    'post_status' => 'publish',
    'posts_per_page' => 6,
    'meta_key' => 'publication_type',
    'meta_value' => 'uma',
);

这显示了 6 个发布类型等于 "uma" 的帖子。 publication_type 是使用高级自定义字段创建的字段。

我还创建了字段publication_year,其中包含2019, 2018, 2017,...

如何将我的所有帖子降序排列?

下面的例子没有做任何事情:

$args = array(  
    'post_type' => 'post',
    'post_status' => 'publish',
    'posts_per_page' => 6,
    'order_by' => 'publication_year',
    'order' => 'DESC'
    'meta_key' => 'publication_type',
    'meta_value' => 'uma',
);

【问题讨论】:

    标签: wordpress loops


    【解决方案1】:
      $args = new WP_Query( array(
        'post_type' => 'post',
        'post_status' => 'publish',
        'posts_per_page' => -1,    
        'meta_query' => array(                                                   
                            array(
                                'key'     => 'publication_type',
                                'value'   => 'uma',
                            ),
                        ),
        'meta_key' => 'publication_year',
        'orderby'   => 'meta_value_num',
        'order' => 'ASC',
     ));
    

    【讨论】:

    • 对不起,这不起作用。这提供了更多的帖子,然后是publication_type =“uma”
    • @DennisPerremans 我编辑了上面的代码。请立即检查。确保您的 meta_key 名称正确。
    • 不,抱歉,它仍然会显示带有publication_type="member" 和publication_type="press" 的帖子。
    • @DennisPerremans R 你确定你存储了名为“publication_type”的自定义字段,因为这段代码没有任何问题,它对我来说工作正常。我测试它。请重新验证您的字段名称并检查其在数据库中的值。因为这里没有采用 'publication_type' 值,这就是问题发生的原因。
    • 是的,我可以向您保证,正确的字段名称是“publication_type”,这是一个选择。而“publication_year”是一个数字字段。我通过打印这些自定义字段的值进行了仔细检查。
    猜你喜欢
    • 2017-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-18
    • 2017-04-18
    • 1970-01-01
    相关资源
    最近更新 更多