Условные теги в WordPress: Финал

Это был долгий пути, но мы всё преодолели и подошли к концу. Я надеюсь, что информация предоставленная в данной серии уроков была увлекательна и полезна.

Что мы изучили

В первой части мы познакомились с понятием условных тегов, а так же узнали какую роль они играют в создании тем и плагинов для WordPress. Вдобавок я продемонстрировал пять примеров умелого использования условных тегов.

В последующих пяти урока мы прошлись по 65 условным тегам: познакомились с их описанием, рассмотрели практические примеры. На момент написания статьи в документации было описано 66 функции, однако потом одна из них была объявлена устаревшей (is_plugin_page()), поэтому цифра снизилась до 65.

В результате, во второй части нами был рассмотрен следующий список условных тегов:

  • Является ли текущая страница главной": is_home()
  • Является ли текущая тема дочерней: is_child_theme()
  • Проверка принадлежности поста к определённой категории: in_category()
  • Проверка использования "Шаблонной страницы: is_page_template()
  • Является ли текущая страница архивом: is_archive()
  • Является ли страница архивом дат: is_date()
  • Проверка активности виджета: is_active_widget()
  • Является ли страница страницей одного поста: is_single()
  • Проверка существования email-а в таблице Users: email_exists()
  • Состоит ли тип поста в иерархии: is_post_type_hierarchical()
  • Проверка на то, что пост "прикреплен": is_sticky()
  • Проверка на открытую панель администрирования: is_admin()
  • Является ли страница "Архивом рубрики": is_category()

В третьей:

  • Проверка находимся ли мы на фронт-энде: is_front_page()
  • Есть ли у поста миниатюра: has_post_thumbnail()
  • Используется ли форма комментариев в отдельном окне": is_comments_popup()
  • Является ли текущая страница 404: is_404()
  • Используется ли таксономия: taxonomy_exists()
  • Является ли текущая страница - страницей результатов поиска: is_search()
  • Является ли текущая страница - страницей архива тегов: is_tag()
  • Проверка на наличие дополнительной выдержки: has_excerpt()
  • Проверка первичного запроса: is_main_query()
  • Проверка наличия тега у поста: has_tag()
  • Проверка файла установки блога: is_blog_installed()
  • Является ли текущий пользователь "супер администратором": is_super_admin()
  • Является ли текущая страница - отдельной “страницей”: is_page()

В четвёртой:

  • Является ли страница, страницей архива по месяцам: is_month()
  • Проверка фичи в теме: current_theme_supports()
  • Проверка активности плагина: is_plugin_active()
  • Является ли URL адресом вложения: is_local_attachment()
  • Является ли страница архивом по промежутку времени: is_time()
  • Проверка локали (справа-налево): is_rtl()
  • Является ли страница, страницей архива таксономии: is_tax()
  • Является ли страница, страницей вложений: is_attachment()
  • Проверка существования термина: term_exists()
  • Проверка наличия термина у поста: has_term()
  • Проверка комментария trackback: is_trackback()
  • Проверка активности опции Multisite: is_multisite()
  • Является ли страница архивом типов постов: is_post_type_archive()

В пятой:

  • Является ли блог основным в вашей WordPress сети: is_main_site()
  • Проверка активности собственного меню: has_nav_menu()
  • Проверка активности плагина в мультисайте: is_plugin_active_for_network()
  • Проверка активности комментариев: comments_open()
  • Проверка наличия виджетов в сайдбаре: is_dynamic_sidebar()
  • Проверка наличия нескольких авторов: is_multi_author()
  • Проверка активности пинга: pings_open()
  • Проверка вывода фида: is_feed()
  • Является ли страница годовым архивом: is_year()
  • Проверка аутентифицирован ли пользователь is_user_logged_in()
  • Является ли вложение изображением: wp_attachment_is_image()
  • Проверка существования типа поста: post_type_exists()
  • Проверка дня публикации поста: is_new_day()

В шестой:

  • Страница или пост: is_singular()
  • Работает ли функция в "Цикле": in_the_loop()
  • Проверка “не активности” плагина: is_plugin_inactive()
  • Является ли страница архивом авторов: is_author()
  • Является ли страница "листингом": is_paged()
  • Отображена ли панель инструментов: is_admin_bar_showing()
  • Является ли страница дневным архивом: is_day()
  • Используется ли сайдбар: is_active_sidebar()
  • Проверка наличия пользователя в таблице Users по его имени: username_exists()
  • Является ли страница анонсом поста: is_preview()
  • Проверка состояния скрипта: wp_script_is()
  • Проверка статуса стилей: wp_style_is()
  • Проверка факта иерархичности таксономии: is_taxonomy_hierarchical()

Бонус: три плагина для удобной работы с условными тегами

А теперь небольшой бонус: описание трёх плагинов, который помогут в работе с уловными тегами!

Widget Logic

Рейтинг 4.3 и миллион загрузок сделали плагин Widget Logic одним из самых популярных дополнений. И это абсолютно понятно, ведь с его помощью можно легко и просто создавать отдельные сайдбары при различных условиях.

Логика данного плагина проста: под каждым виджетом в панели управления вставляется небольшое поле ввода в которое можно ввести условный тег так, как будто вы вводили его в условие if. Будьте осторожны: Данный плагин использует функцию EVAL. Это значит, что любой PHP код вставленный в этот блок может быть выполнен. Любой. Будьте бдительны.

Script Logic

Script Logic предназначен для управления вашими JavaScript файлами — а именно вызовом их подключения с помощью функции wp_enqueue_script(). Данный плагин позволяет подгружать различные скрипты в зависимости от того или иного условия. В нутре плагина так же используется функция EVAL, так что будьте осторожны.

Conditional Shortcodes

Помните пример, который мы рассматривали во время изучения условного тега is_feed()? Данный плагин расширяет его до использования 19 функций. Список условных тегов, поддерживаемых плагином:

  • comments_open()
  • is_archive()
  • is_author()
  • is_category()
  • is_day()
  • is_feed()
  • is_front_page()
  • is_home()
  • is_month()
  • is_page()
  • is_page()
  • is_search()
  • is_single()
  • is_singular()
  • is_sticky()
  • is_tag()
  • is_tax()
  • is_time()
  • is_year()

Использование сводится к работе с шорткодом: поместите условный тег в квадратные скобки и укажите параметры.

Конец

Данная серия уроков была не проста, но очень познавательна. Надеюсь эти знания вам пригодятся.

Данный урок подготовлен для вас командой сайта ruseller.com
Источник урока: http://code.tutsplus.com/tutorials/a-walkthrough-on-conditional-tags-in-wordpress-series-finale--cms-22313
Перевел: Станислав Протасевич
Урок создан: 1 Сентября 2015
Просмотров: 4438
Правила перепечатки


5 последних уроков рубрики "Wordpress"

^ Наверх ^