Если это страница архива произвольного типа записи

24 нояб. 2014 г., 18:17:14
Просмотры: 23.9K
Голосов: 9

Если мне нужно проверить, является ли произвольный тип записи фильмом (movie), я могу использовать следующий код.

if ( 'movie' == get_post_type() )

Мне нужно проверить, является ли это страницей архива произвольного типа записи? (www.domain.com/movie)

0
Все ответы на вопрос 1
2
18

Проверьте функцию is_post_type_archive() в кодексе

if( is_post_type_archive('movie') )
{
    //do my thing
}
24 нояб. 2014 г. 18:24:07
Комментарии

Внимание, это также влияет на страницу редактирования в админке (/wp-admin/edit.php?post_type=movie&all_posts=1)! Например, если вы установите $query->set( 'posts_per_page', 3 );, то в админке будет отображаться только три фильма. Не совсем понятно из кодекса, должна ли функция проверять, что мы находимся на фронтенде архива, но если да, то она работает неидеально.

Fanky Fanky
14 сент. 2021 г. 13:40:47

По крайней мере, это то, с чем я столкнулся при подключении к хуку pre_get_posts и изменении запроса по условию if( is_post_type_archive('movie')

Fanky Fanky
14 сент. 2021 г. 13:48:20