is_post_type_archive()
Перевіряє, чи користувач на архівній сторінці записів довільного типу.
Сторінкою архіву довільного типу вважається сторінка, де виводяться записи нового типу ( /?post_type=custom ). Якщо, наприклад, новий тип записів називається ‘book’, то така сторінка матиме URL-адресу: http://example.com/book/
(може відрізнятися, залежить від налаштувань ЧПУ).
Функція повертає false
сторінок типу /category/uncategorized/?post_type=custom
. true повертається лише для сторінок типу /?post_type=custom
. Тобто функція не перевіряє наявність параметра post_type у запиті, вона перевіряє чи це записів довільного типу. Можливо як альтернативу потрібно використовувати get_query_var(‘post_type’) .
Функція також спрацьовує в адміністраторі на сторінці з таблицею записів.
is_shop()
(дуже швидко) | 50000 разів – 0.03 сек
(швидкість світла)
Хуків немає.
Повертає
true|false
. Якщо це архівна сторінка, на якій відображаються записи довільного типу, то функція поверне true, інакше false.
Використання
if( is_post_type_archive( $post_types ) ){ // ... }
-
$post_types
(рядок/масив) -
Назва типу посту чи масив із назв типів постів.
За замовчуванням: ”
Приклади
#1 Сторінка архіву нового типу посту
Цей приклад показує, як визначити, чи є поточна сторінка архіву довільно типу посту. Виведемо заголовок нового типу посту.
<?php if ( is_post_type_archive() ) { ?> <h1><?php post_type_archive_title(); ?></h1> <?php }
нотатки
- Global. WP_Query. $wp_query WordPress Query object.
список змін
З версії 3.1.0 | Введено. |
Код is_post_type_archive() is post type archive WP 6.0.2
function is_post_type_archive( $post_types = '' ) { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags до роботи не працює, тому що керує. Before then, they always return false.' ), '3.1.0' ); return false; } return $wp_query->is_post_type_archive( $post_types ); }