2017-02-21 30 views
1

Этот вопрос задан нагрузка и попробовал разные способы, но не может показаться, что это работает!Wordpress acf пользовательское поле дата - скрыть истекшие события

У меня есть пользовательские сообщения типа «события» с пользовательским полем «дата», выполненным через acf.

Я могу перечислить все события с датой и заказать их по дате. Но я хочу скрыть даты, прошедшие с текущей даты. Код у меня есть:

<?php 

    query_posts(array( 
    'post_type' => 'events', 
    'meta_key'   => 'date', 
    'orderby'   => 'meta_value_num', 
    'order'    => 'ASC' 
    )); 
    if (have_posts()) : while (have_posts()) : the_post(); 
?> 

<div class="event-block"> 
    <div class="event-block-info"> 
    <h2><?php the_title(); ?></h2> 
    <p><?php 
     $endDateText = date_i18n("d M Y", strtotime(get_field('date'))); 
     echo $endDateText; 
    ?></p> 
    <div class="event-block-image"> 
    <?php the_post_thumbnail('medium'); ?> 
    </div> 
    <div class="content"> 
    <?php the_content(); ?> 
    </div> 
    </div> 
</div> 


<?php endwhile; endif; wp_reset_query(); ?> 

Спасибо за помощь

ответ

0

попытаться сравнить конечную дату события вы получаете от ACF поля с фактическим временем и избежать распечатать прошлые события.

...

if (have_posts()) : while (have_posts()) : the_post(); 

if(strtotime(get_field('date'))<time()){ 
    continue; 
    } 
?> 
<div class="event-block"> 

....

+0

Великий, он работал благодаря – user1961395

+0

Это работало на главной странице события в котором перечислены все события. Однако на моей домашней странице я хочу просто вытащить только событие. Я думал, что могу просто воспроизвести это и добавить «posts_per_page => 1», по-видимому, принимая во внимание скрытые события, и поэтому ничего не отображается. Любые идеи, основанные на том, что было сделано, как просто показать 1 предстоящее событие? – user1961395

+0

вы можете запросить все сообщения с meta_key 'date' больше, чем сегодня, и заказывать результаты в порядке инкрустации по 'дате'. Чем получить первый элемент результирующего массива – fabio