Однією з найважливіших особливостей WordPress є розширюваність ядра. За допомогою плагінів і тем користувачі WordPress вже майже десять років створюють власні унікальні сайти. (WordPress вперше був представлений в 2003 році, але плагіни були введені в 2004 році, а теми з’явилися в 2005).

І для створення надійної інфраструктури WordPress включає в себе безліч допоміжних підсистем (функцій, класів або цілих API). Однією з них є «Умовні позначки«, які визначають різну дію коду в залежності від конкретної ситуації.

У цій серії статей ми розглянемо умовні позначки. І почнемо з їх визначення та розгляду того, чому вони настільки важливі. А в наступних частинах ми розглянемо самі умовні позначки з описами і конкретними прикладами.

Давайте приступимо!

Що таке Умовні позначки?

У Кодексі WordPress дається наступне визначення умовних позначок:

Умовні позначки можуть використовуватися у файлах шаблонів для визначення того, що повинно відображатися на певній сторінці і яким чином, в залежності від того, яким умовам відповідає ця сторінка.

Це дає нам загальне уявлення: щоб ваш код додавав або змінював контент, використовуються умовні позначки, щоб вказати для коду тип, стан і місце розміщення контенту.

Уявіть собі, що код веде таку бесіду з WordPress:
Код: Гей, друже, мені потрібна допомога.
WordPress: Звичайно, я весь в увазі. Що тобі потрібно?
Код: Я хочу обернути ці заголовки записів у певні DIV, але мені потрібно знати, виводяться вони в даний момент на сторінці архіву категорії чи ні. Вони виводяться на сторінці архіву категорії?
WordPress: TRUE
Код: Е… Чого?
WordPress: Я маю на увазі, так.
Код: Здорово! Спасибі!
WordPress: Всього найкращого!

Якось так, загалом. Умовні позначки — це логічні оператори, які направляють код в потрібне русло, коли ці теги, що зустрічаються всередині оператора if/else. Вони повертають тільки значення TRUE або FALSE, і кодом потрібні тільки ці два логічних значення.

Як використовувати умовні позначки

Хоча умовні теги — це досить важлива частина системи WordPress, вони дивно прості у використанні. Так як вони повертають тільки TRUE або FALSE, ви без зайвих проблем можете використовувати їх усередині оператора if (насправді, існують три окремих умовних тега, які повертають FALSE або певне значення. Ми повернемося до них в наступних частинах, але їх ви теж можете використовувати в операторі if.)

Давайте розглянемо простий приклад того, як працює умовний тег:

Ми використали умовний тег в операторі if і вказали WordPress, що, якщо це домашня сторінка, то повинен виводитися текст привітання.

Давайте розглянемо ще один приклад, з «чистим» кодом:

Ми створили змінну і визначили в ній умовний тег; таким чином, ми можемо використовувати змінну в операторі if. Простіше простого!

Приклади сценаріїв для використання умовних позначок

Існує безліч ситуацій для використання умовних позначок. Навскидку, я можу навести п’ять основних сценаріїв, в яких вони можуть використовуватися:

  • Уявіть собі, що ви розробляєте плагін соціальних кнопок для WordPress і хочете надати користувачам можливість відобразити або приховати віджет. Використовуючи is_single(), is_page() і is_singular(), ви можете створити функцію, яка перевіряє налаштування модуля користувача і, приміром, приховує віджет на сторінках, але виводить його для кожного запису;
  • Припустимо, що ви розробляєте тему для невеликої компанії. Ви працюєте зі сторінкою «Новини» (розділ теми «Блог»). Ви розробили цікавий макет для виводу списку записів з мініатюрами … але ви знаєте, що співробітники компанії можуть забути або свідомо не використовувати мініатюри для деяких записів. Ось де нам знадобиться has_post_thumbnail(): використовуйте цей тег і ваша тема буде перевіряти, чи містить запис мініатюру, чи потрібно вивести зображення за замовчуванням;
  • Припустимо, ви створюєте додаток для популярного плагіна WordPress. Ви повинні упевнитися, що основною плагін встановлений і активована в даний момент, тому що ваше розширення може викликати проблеми, якщо починаючий користувач інсталює його без використання основного плагіна. Рішення просто: за допомогою is_plugin_active(), ви можете вимкнути свій плагін, а з допомогою is_plugin_inactive(), можете вивести попередження в панелі адміністрування;
  • Ви створили тему для клієнта, і він хоче завантажувати малюнки, PDF-документи і ZIP-архіви. Але він також хоче, щоб в кожній запису виводилися тільки всі зображення. Використавши умовний тег wp_attachment_is_image(), можна вибрати з всіх завантажених файлів тільки зображення і вивести їх в запису;
  • Скажімо, ви створюєте плагін для блогів з декількома авторами, і хочете перевірити, чи ведеться цей блог кількома авторами або одним. Умовний тег is_multi_author() відповість на це питання.

Висновок

Як бачите, умовні позначки є однією з найбільш простих у використанні функцій для WordPress. Але в той же час однією з найбільш важливих складових тем і плагінів.

Мета цієї серії статей полягає в тому, щоб дати уявлення про умовних позначках. У найближчих п’яти статтях ми розглянемо 65 різних умовних позначок: з описами, прикладами використання деяких з них.

Продовження в наступній частині!

Переклад статті «A Walkthrough on Conditional Tags in WordPress Introduction» був підготовлений дружною командою проекту Сайтостроение від А до Я.