Как получить категорию следующего поста в цикле wp_query - PullRequest
1 голос
/ 10 мая 2019

Мне нужно проверить, имеет ли текущий пост в цикле ту же категорию, что и следующий.

while($query->have_posts()){
    $query->the_post();
        if(category_of_this_post == category_of_the_next_post) //this
        //do something
    }

Ответы [ 2 ]

0 голосов
/ 10 мая 2019

это работало для меня в прошлом, чтобы сохранить предыдущее и следующее в одной и той же кошке:

 <?php previous_post_link( '%link', __( '<span class="prev"><< Previous Post</span>', 'esquire' ), TRUE ); ?>
 <?php next_post_link( '%link', __( '<span class="prev">Next Post >></span>', 'esquire' ), TRUE ); ?>
0 голосов
/ 10 мая 2019

Примерная настройка выглядит следующим образом.

while ( $query->have_posts() ) : $query->the_post();

    $next                 = $query->posts[ $query->current_post + 1];
    $current_categories   = get_the_category();
    $next_post_categories = get_the_category($next->ID);

    if ( /* compare $current_categories  $next_post_categories */ ) {

    }
endwhile;
wp_reset_postdata(); // always reset

Несколько вещей, о которых следует помнить:

  • Вы можете назначить несколько категорий, поэтому подумайте, как вы хотите сравнить
  • В последнем сообщении вы получите уведомление.потому что его не существует.Постройте для этого чек.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...