按自定义字段日期,(年和月)wordpress排序

时间:2016-01-03 19:52:17

标签: wordpress custom-fields meta-key

我有这个meta_query,它是:

一个帖子类型的“简报”,其中我创建了一个名为“date_newsletter”的自定义字段,它会使一年和一月的记录具体,并按“date_newsletter”字段排序,并按帖子的ID排序。

Meta_query但这不适合我。

任何帮助?

$args = array(
        'post_type' => 'newsletter',
        'meta_query' => array( 
            array(
                'key' => 'date_newsletter', 
                'value' => date("Y"), 
                'compare' => '=', 
                'value' => $y, 
            ),
            array(
                'key' => 'date_newsletter', 
                'value' => date("m"), 
                'compare' => '=', 
                'value' => $m, 
            )
        ),
        'meta_key' => 'date_newsletter',
        'orderby' => 'meta_value',
        'orderby' => 'id',
        'order' => 'DESC',
        'showposts' => '-1'

1 个答案:

答案 0 :(得分:0)

你有两次价值设定。您应该按meta_value_num订购,也应该posts_per_page而不是showposts(在2.1中更新)。你的orderby应该在一个数组中 - 而不是分开。

您的新代码:

$args = array( 
                                'post_type' => 'newsletter', 
                                'post_status' => 'publish', 
                                'meta_key' => 'date_newsletter', 
                                'meta_query' => array(
                                                    array(
                                                    'key' => 'date_newsletter', 
                                                    'value' => date("Y"), 
                                                    'compare' => '=',
                                                    ),
                                                array(
                                                    'key' => 'date_newsletter', 
                                                    'value' => date("m"), 
                                                    'compare' => '=',
                                                    )
                                                ),
                                'orderby'=> array('meta_value_num', 'ID'), 
                                'order' => 'DESC', 
                                'posts_per_page' => -1);