按自定义字段日期列出自定义帖子类型

按自定义字段日期列出自定义帖子类型

问题描述:

我正在使用Wordpress和WP-Types插件,并需要按自定义字段日期对CPT进行排序。按自定义字段日期列出自定义帖子类型

这项工作很好:

$args = array(
    'post_type' => 'parties', 
    'paged' => $paged, 
    'meta_key' => 'wpcf-parties_date', 
    'orderby' => 'meta_value', 
    'order' => 'DESC', 
); 

的排序依据完美的作品。 在数据库上,字段日期'wpcf-parties_date'的值以这种方式存储,例如:1349481600。

我有两个模板,我需要显示过去和即将发布的帖子。我的问题是,我如何只显示关于当前日期的未来或过去的帖子?

我尝试这个没有运气。

$args = array(
    'post_type' => 'parties', 
    'paged' => $paged, 
    'meta_key' => 'wpcf-parties_date', 
    'meta_value' => date('d.m.Y H:i:s'), 
    'meta_compare' => '>', 
    'orderby' => 'meta_value', 
    'order' => 'ASC' 
); 

我使用WP_Query作为循环。

在此先感谢!

您可以尝试meta_query以检查<and>并同时使用meta_value_num,因为您的自定义字段值是数字(1349481600)。

$current_date=strtotime(date('d.m.Y H:i:s')); 
$args = array(
    'post_type' => 'parties', 
    'paged' => $paged, 
    'meta_key' => 'wpcf-parties_date', 
    'orderby' => 'meta_value_num', 
    'order' => 'ASC', 
    'meta_query' => array(
     array(
      'key' => 'wpcf-parties_date', 
      'value' => $current_date, 
      'compare' => '>' 
     ), 
     array(
      'key' => 'wpcf-parties_date', 
      'value' => $current_date, 
      'compare' => '<' 
     ) 
    ) 
); 

Read the documentation for more

+0

谢谢你,完美的工作! – alejoabella

+0

不客气:-) –