В статье — (в общем-то) полный список основных условных тегов WordPress с кое-какими пояснениями; ссылки на посты с примерами и т.п.
На этом сайте есть много статей, да и новые пишутся, в которых повествуется о полезных функциях WP, а эти функции, вебмастера частенько используют в купе с условными тегами, так что…
…будем изучать варианты и принципы отработки условных тегов Вордпресс. Однако, разбирая материал, приходилось ссылаться в недра codex.wordpress, чтобы читатель получил подробности… а это не очень удобно.
…а посему, хотя об этом расписано достаточно много в сети, решил опубликовать подборку условных тегов и у себя, снабдить некоторыми пояснениями и, в дальнейшем, при необходимости, ссылаться на этот пост…
Google ввел новый тег indexifembedded — что это и как использовать
условные теги WordPress — Conditional Tags
Условные теги:
…как логично подсказывает само определение, призваны проверять — выполняется ли некое условие на определённой странице (в каком либо процессе, цикле).
Условные теги также возможно отнести к второстепенным (вспомогательным) PHP функциям (например, WordPress).
Как отключить подгрузку стилей, скрипов для страниц, не относящихся к Wooсommerce
пример работы условных тегов:
…выведем информацию только на страницах записей: это поможет обусловить тег is_single():
if( is_single() ) {
echo 'информация';
}
Также возможно указать конкретную страницу, на которой будет выведена информация — помещаем в скобки id требуемой записи: is_single(4) — как понимаете, в этом случае php будет проверять, выполняется ли заданное условие, и как только условие будет соответствовать странице-записи ID 4 — информация будет выведена.
Также, при работе с условными тегами, стоит помнить о значке «!» — инвертирование: если говорить просто, то он позволит работать с условными тегами от обратного…
if( ! is_single()) {
echo 'информация';
}
То есть ясно: без восклицательного знака условие is_single() вернёт true на всех страницах записей — условие будет выполнено, информация выведется.
В противном случае — наоборот false, условие не выполнится…
… «!» значит, что информация выведется на всех страницах кроме «записей»…
…точно также возможно указывать ID.
Условными тегами может быть «завёрнута» некая функция: то есть в примере выше мы использовали HTML, но точно также возможно работать и с PHP функциями!
В общем — всё просто, однако, эта простота поможет более тонко настроить свой сайт — более удобно и для пользователей и для себя!
условные теги WP
начнём с этих достаточно распространённых среди админов условных тегов:
is_home() — главная, или основная страница сайта.
is_front_page() — главная страница — например, главная в качестве заданной страницы is_page().
Убираем циклическую ссылку h1 — логотип на главной странице. Как правильно разметить шапку сайта header.php — теги h1 — h2 и их условия вывода…
is_404() — проверяет страницу ошибки 404 (404: страница не найдена).
is_admin() — проверяет открыта ли админ-панель сайта (консоль — любая страница админки).
is_archive() — сработает, если мы находимся на любой из архивных страниц (категории, автор, метки, даты и пр.).
is_attachment() — проверка страниц на страницы вложений.
is_author() — проверяет условность отображения страниц архивов постов автора. Возможно указать ID требуемого автора.
is_blog_admin() — проверяет — текущий запрос — на предмет страницы в разделе администрирования отдельного сайта сети в WordPress MU.
is_comment_feed() — является ли запрос страницы, страницей фида комментариев.
is_customize_preview() — отработает, если мы находимся в кастомайзере WP (визуальная настройка темы).
даты и т.п. и пр.
is_date() — проверка страниц архива по дате.
is_day() — проверка страниц архивов по дням — URL site.ru/2009/08/05
is_month() — проверка архивов «записи за месяц» site.ru/2009/08.
is_time() — отображается ли страница по времени (страница созданная в указанное время).
is_year() — страница с постами за указанный год site.ru/2017.
is_embed() — проверка страницы встраивания записи (embede).
is_feed() — проверка — запрашивается ли фид.
is_front_page() — проверка условия — главная (домашняя) страница сайта? нет..?
is_network_admin() — это страница раздела админки «Управление сетью» сайтов в Мультисайт?
страницы, записи — контент…
is_page() — проверка на предмет — постоянная ли страница? возможности: указываем ID, ярлык, либо заголовок страницы для проверки условий: на ЭТОЙ странице разбираем примеры для is_page для страниц пагинации noindex,follow.
is_page_template() — проверка использования страницей файла шаблона. возможности: указать название файла шаблона (по ссылке выше подробно разбираем примеры этого условного тега).
is_paged() — страницы пагинации ( по типу /page/2, /page/3, /page/4) — по ссылке выше подробно разбираем примеры этого условного тега!
is_single() — страница записи любого типа записей кроме attachment и page. (подробнее: как найти и убрать циклические ссылки… работа с условными тегами)
is_singular() — страница записи (поста, страницы, вложения, произвольны тип записи). Все страницы…
is_post_type_archive() — проверка условий страниц записей произвольного типа.
is_preview() — страница предпросмотра записи.
is_robots() — проверка — запрос ли к файлу robots.txt?
is_search() — отработает , если отображается страница результатов поиска.
is_ssl() — проверим на предмет, используется ли защищенный протокол HTTPS (SSL), или нет…
архивы…
is_category() — проверяет отображается ли страница архивов категорий…
is_tag() — страница архива по меткам.
is_tax() — страница пользовательской таксономии.
is_trackback() — является ли текущий запрос запросом на страницу пингов (trackback)
is_user_admin() — условная проверка — является ли страница страницей пользователя в админке, в сети мультисайт.
wp_doing_ajax() — является ли текущий запрос AJAX запросом WordPress.
wp_doing_cron() — текущий запрос, запрос к Крону?
Условные теги woocommerce…Подборка полезного кода (сниппеты) для работы магазина на WooCommerce…14 полезных сниппетов — код для наилучшей работы сайта WordPress — функции…
остальные условные теги WordPress — для более утончённой работы
cat_is_ancestor_of() — является ли указанная рубрика дочерней к другой указанной рубрике (проверка на все уровни вложенности).
comments_open() — проверит — разрешено комментирование для указанного поста/записи?
email_exists() — условие — имеется ли email адрес среди зарегистрированных пользователей сайта.
условия записей, постов
has_category() — условия — находится ли текущая (можно указать конкретную проверку) запись в какой-то из указанных категорий.
has_custom_header() — установлена ли картинка для шапки темы…
has_excerpt() — есть ли у текущего поста «отрывок» (цитата, короткое описание).
has_nav_menu() — имеется ли в зарегистрированной области для меню прикрепленное меню?
has_post_thumbnail() — имеется ли в указанной записи (посте) картинка, миниатюра…
has_shortcode() — есть ли в данном тексте указанный шоткод.
has_tag() — проверка принадлежности поста к указанным меткам.
has_term() — имеет ли пост термины т.е. (с учетом таксономии).
have_comments() — проверка наличия комментариев для вывода на текущей странице, записи…
have_posts() — существуют ли для текущего запроса WP результаты для вывода?
in_category() — принадлежность поста к указанной категории (возможность указать несколько категорий).
in_the_loop() — активен ли цикл перебора записей в момент вызова этой функции. какое-либо действие в цикле WordPress.
административные условные теги…
is_admin() (страница админки) — страница админки блога.
is_active_sidebar() — используем указанную панель виджетов (область виджетов, сайдбар). отработает при наличие даже одного виджета!
is_admin_bar_showing() — будет ли показан (или уже показан) «Админ бар» (тулбар). Попросту, будет ли выведена панель тулбара для текущего пользователя.
is_blog_installed() — проверка на предмет установлен ли сайт. …наличие опции siteurl и таблиц в базе данных.
is_child_theme() — работает ли дочерняя тема.
is_dynamic_sidebar() — проверка — разрешена ли функция сайдбаров (виджеты и панели для них).
is_header_video_active() — условие, показать имеющееся видео заголовка на текущей странице?
is_local_attachment() — это страница вложения (файла медиатеки WordPress) текущего сайта?
is_main_query() — в главном цикле WordPress выполняется то или иное действие.
is_multi_author() — количество авторов на сайте, — если больше одного, тогда вернет true, наоборот false.
is_multisite() — включена на сайте ф. мультисайт?
is_nav_menu() — проверка условий меню на существование по ID, ярлыку или имени…
is_new_day() — отличие текущей даты от предыдущей (в цикле).
s_plugin_active() — работает только в админ-панели: проверка — активен ли какой-то указанный плагин?
is_sticky() — прилеплен ли текущий пост к главной странице сайта.
is_textdomain_loaded() — загружен ли файл локализации для указанного домена (ключа перевода)?
is_user_logged_in() — авторизован ли пользователь (пользователь под своим логином). Возвртит true, если пользователь авторизован, либо false, коли нет.
pings_open() — права (разрешено ли) текущему посту получать пинги.
post_exists() — условия, существует ли запись (пост) с указанным заголовком (post_title). …можно указать еще: post_content и post_date.
шорткоды…
post_password_required() — защищен пост паролем или нет?
shortcode_exists() — зарегистрирован ли указанный шоткод?
условные теги таксономий…
is_post_type_hierarchical() — указанный тип записи древовидный!
is_taxonomy_hierarchical() — древовидная таксономия или нет?
taxonomy_exists() — существует ли указанная таксономия?
term_exists() — есть ли на сайте указанный элемент таксономии (раздел). Если есть: возвращает ID, либо массив идентификаторов этого элемента.
term_is_ancestor_of() — второй термин дочерний к первому?? (проверка всех уровней вложенности).
wp_attachment_is() — условия проверки — указанное вложение картинка, аудио, видео.?.
wp_attachment_is_image() — текущая запись является ли вложением-картинкой?

Какие-то подробности возможно отыскать здесь: codex.wordpress.org… или здесь…
в кино рассмотрим нюансы в работе с условными тегами Вордпресс на примере скрытия страниц пагинации в noindex,follow
mihalica.ru !




Спасибо, конечно!
Но мне бы теперь у себя ничего не испортить (запоминать много трэбо) — ибо много правок путем проб и исправлений совершить придётся)
Ну, Елена! вся наша жизнь — путь проб и исправлений))
В утешение вам: ошибки совершают все!! но не все, конечно, исправляют!
(возникнут трудности, пишите!)