wp_reset_query() — восстанавливает значения глобальных переменных $wp_query и $post

Сбрасывает значения глобальных переменных $post и $wp_query на первоначальные, используемые на текущей странице. Нужна для правильной работы условных тегов и функций вывода постов(the_title, the_permalink() и т.д.).

wp_reset_query()

Функция не имеет аргументов и ничего не возвращает.

Примеры

Если вы используете query_posts() для создания дополнительных циклов, например вывода свежих записей, то добавление функции wp_reset_query() после цикла — обязательно.

query_posts('posts_per_page=5');
 
while(have_posts()) : the_post();
    /* тут ссылка на запись или что-то в этом роде */
endwhile;
 
wp_reset_query();

В случае с созданием циклов постов через WP_Query() дела обстоят несколько иначе и там можно ограничиться функцией wp_reset_postdata(), но вместо нее также в большинстве случаев можно использовать и wp_reset_query().

$my_query = new WP_Query('posts_per_page=5');
 
if($my_query->have_posts()):
    while($my_query->have_posts()) : $my_query->the_post();
        /* тут ссылка на запись или что-то в этом роде */
    endwhile;
endif;
 
wp_reset_query();

Источник: misha.blog

Миша Рудрастых

Путешествует по миру и рассказывает всем о WordPress лично, у себя в блогах и на курсах в Санкт-Петербурге. Умеет просто объяснять сложные вещи, делает это красиво. Организовывает неплохие WordCamp's, но совсем не умеет слушать чужие доклады.

Добавить комментарий

%d такие блоггеры, как: