在get_posts中按日期自定义元框值排序

在get_posts中按日期自定义元框值排序

问题描述:

I need to order posts by custom meta box date field

    $args = array(
                'meta_key' => 'event_date',
                'orderby' => 'meta_value_num',              
                'order'         => 'ASC',                    
                'post_status'   => 'publish',
                'post_type'     => 'events',
                'numberposts'   => -1
            );
$poslist= get_posts( $args );

I tried above code but its not working, date filed format is "yyyy-mm-dd"

我需要按自定义元框日期字段订购帖子 p>

  $ args = array(
'meta_key'=>'event_date',
'orderby'=>'meta_value_num',
'order'=>'ASC',
'post_status'=>  'publish',
'post_type'=>'events',
'numberposts'=> -1 
); 
 $ poslist = get_posts($ args); 
  code>  pre  > 
 
 

我尝试了上面的代码,但它不起作用, date归档格式为“yyyy-mm-dd” p> div>

           $fromDate = '2013-01-01';
            $toDate = '2014-01-01';
            $args = array(
                'meta_key' => 'event_date',
                'orderby' => 'meta_value',                
                'order'         => 'DESC',           
                'post_status'   => 'publish',
                'post_type'     => 'page',
                'numberposts'   => -1,
                'meta_query' => array( array(
                                        'key' => 'event_date',
                                        'value' => $toDate, // date to compare to, before this one
                                        'compare' => '<',
                                        'type' => 'DATE' //set the format
                                        ),
                                        array(
                                            'key' => 'event_date',
                                            'value' => $fromDate, // date to compare to, after this one
                                            'compare' => '>=',
                                            'type' => 'DATE' //set the format
                                        ),
                                    ),
            );

         $currentEventsPost = get_posts( $args );

Try something along the lines of

$args = array(
  'post_type' => 'events',
  'meta_key' => 'event_date',
  'orderby' => 'meta_value',
  'order' => 'ASC',
  'meta_query' => array(
    array(
      'key' => 'event_date',
      'compare' => 'LIKE',
    )
  )
);
$query = new WP_Query($args);