Wordpress按自定义字段值排序

时间:2014-07-22 10:32:30

标签: wordpress

希望有人可以提供帮助。

我有一个名为Collections的自定义帖子类型,需要按名为Seasons的自定义字段进行排序。在收集归档模板上有一个自定义查询按季节对帖子进行排序,但我似乎无法使“订单”选项起作用。最重要的是,我希望每个季节中的帖子都显示在日期添加顺序中,而这些顺序目前还没有。我需要实现的是按季节排序的集合(最近的第一个),然后按添加日期排序(最近的第一个)。

自定义查询如下所示

<?php 

    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;

    $args = array(
        'paged' => $paged,
        'posts_per_page' => 4,
        'post_type' => 'collection',
        'meta_key' => 'season',
        'orderby' => 'meta_value meta_value_num'
        'order' => 'DESC'        
        );

    $the_query = new WP_Query( $args );

?>

2 个答案:

答案 0 :(得分:0)

我不知道你在meta_key'season'中有什么 - 是字符串还是数字?如果是数字,我认为它应该是这样的:

<?php 

    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;

    $args = array(
        'paged' => $paged,
        'posts_per_page' => 4,
        'post_type' => 'collection',
        'meta_key' => 'season',
        'orderby' => 'meta_value_num date'
        'order' => 'DESC'        
        );

    $the_query = new WP_Query( $args );

?>

答案 1 :(得分:0)

如下所示:

 $args = array(
        'paged' => $paged,
        'posts_per_page' => 4,
        'post_type' => 'collection',        
        'orderby' => 'meta_value_num',
        'meta_key' => 'season',
        'order' => 'DESC'        
        );