按自定义发布元日期排序

时间:2016-04-07 12:35:25

标签: wordpress date custom-post-type

我正在尝试通过自定义帖子元日期来订购我即将举办的活动,但它没有按预期工作。它只按天订购,而忽略了几个月和几年。 例如:

2016年4月1日
2016年7月4日
2016年5月10日

<?php
global $post;

 $today = date('jS F Y');
    $args = array(
            'post_type'         => 'event',
            'posts_per_page'    => 4,
            'meta_key'          => 'start_date', 
            'orderby'           => 'meta_value_num',
            'order'             => 'DESC',
            'meta_value_num'    => $today,
            'meta_compare'      => '>'
  );

$loop = new WP_Query( $args );

echo '<ul class="events-list">';
    while ( $loop->have_posts() ) : $loop->the_post(); 
echo '<li>';
echo '<div class="meta-fields">';
$start_date = get_post_meta( get_the_ID(), 'start_date', true );
$new_format_start = date_i18n('jS F Y',strtotime($start_date)); 
$end_date = get_post_meta( get_the_ID(), 'end_date', true ); 
echo  $new_format_start;

    if ($end_date) {
    $new_format_end = date_i18n('jS F Y',strtotime($end_date)); 
    echo ' - ' . $new_format_end;
    } else {
    echo "";
    } 
echo '</div>';
?>
<p><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></p>

<div class="entry-content">
     <p class="event-widget"> <?php echo get_the_excerpt(); ?> </p>
</div>
</li>

<?php 
    endwhile;
    echo '</ul>';
    }

1 个答案:

答案 0 :(得分:1)

好吧显然它没有用,因为我在输入中使用了一个日期选择器,所以我把它改为了square
太糟糕的输入日期在firefox中不起作用。