2016-04-07 28 views
0

Gelecekteki etkinliklerimi özel gönderi meta tarihine göre sipariş etmeye çalışıyorum, ancak olması gerektiği gibi çalışmıyor. Sadece günlerce sipariş verir ve aylar ve yılları göz ardı eder. örnek:Özel gönderi meta gönderime göre düzenle

1 Nisan 2016
4 Temmuz 2016
10 Mayıs 2016 benim girişinde bir datepicker kullanıyordum çünkü işe yaramadı, bu yüzden bunu değiştirdi görünüşte

<?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>'; 
    } 
+0

'Meta_type' => 'NUMERIC' gibi bir tür parametresi belirtin ancak tarih biçiminiz bu tarihe benziyor ("Y-m-d"); –

+0

Bunu denedim, ama işe yaramadı:/ – DeerDeer

+0

Bu bağlantıyı deneyin umarım sizin için yararlıdır. http://wordpress.stackexchange.com/questions/178156/order-by-three-custom-fields-y-m-d-then-separate-into-yearly-sections –

cevap

0

Tamam
<input type="date">.
Çok kötü giriş tarihi, firefox'ta çalışmaz.