Посмотрите специальные предложения для летнего отдыха!

Александр Харитонов

«Если б я был султан» — Условные теги WordPress

Что это такое?

Довольно часто при создании какого-нибудь нового сайта приходится сталкиваться с необходимостью использовать так называемые «условные теги WordPress». Для тех, кто не знает, что это объясню на человеческом языке, здесь всё довольно просто.

Условные теги – это такие php-конструкции в шаблоне вашей темы, с помощью которых задается, что произойдет какое-то определенное действие, если будет выполняться заданное условие. Или еще проще можно объяснить на примере:

«Если это страница «Портфолио», то в верхнем меню появится ссылка «Нужен сайт?».

Именно с помощью такой конструкции это реализовано на моем сайте, можете сами посмотреть.

Условные теги WordPress - Разбор на примере (Если б я был султан)
Так вот данную конструкцию моя память все никак не хочет записать себе, постоянно приходится искать либо в кодексе WordPress, либо на ранее сделанных сайтах. Поэтому было решено внести это в свои заметки по сайтостроению, чтобы всегда было под рукой, собственно, для этого и был создан данный раздел в первую очередь.

Как сделать?

Довольно предисловий. Теперь кратко и по существу. Буду показывать как раз на данном примере моего сайта, чтобы сразу был виден результат.

Нам необходимо, чтобы на странице «Портфолио», появлялась ссылка «Нужен сайт?», а затем наоборот.

Условные теги WordPress - Разбор на примере

Для этого идем в файл header.php (так как в моем шаблоне именно там находится верхнее меню), находим нужное нам место и вставляем следующий код:

1
2
3
4
5
<?php if (is_page( 'portfolio' )) {?>
		     <a href="<?php bloginfo('url'); ?>/uslugi/">Нужен сайт?</a>
		 <?php } elseif (is_page( 'uslugi' )) { ?>
		     <a href="<?php bloginfo('url'); ?>/portfolio/">Портфолио</a>
<?php } ?>

В общем и целом, уже по этому коду все достаточно легко и понятно. Если (if) страница Портфолио (portfolio), то показываем ссылку «Нужен сайт?». Если (elseif) страница «Услуги» (uslugi), то показываем ссылку на портфолио.

Если нам необходимо будет написать что-нибудь другое, если ни то, ни другое условие не выполняется, то мы добавляем еще небольшой участок кода, который будет показываться всегда, если это ни та, ни другая страницы.

1
2
3
4
5
6
7
<?php if (is_page( 'portfolio' )) {?>
		     <a href="<?php bloginfo('url'); ?>/uslugi/">Нужен сайт?</a>
		 <?php } elseif (is_page( 'uslugi' )) { ?>
		     <a href="<?php bloginfo('url'); ?>/portfolio/">Портфолио</a>
<?php } else { ?> 
                 Добавляем этот код с else, и вот на месте этого текста пишем то, что будет нужно 
<?php } ?>

Условные теги с id страницы

Вместо названий страниц можно использовать их id. Посмотреть их довольно легко, но не так просто, как могло бы быть чисто теоретически. Чтобы узнать id нужной страницы, идем в свою административную панель, заходим в раздел страницы и наводим мышкой на необходимую нам. Внизу в браузере у вас появится ссылка к редактированию данной страницы, а там будет id этой страницы. На скриншоте id страницы «Портфолио» — равен 217.

Как узнать ID странице на WordPress

Поэтому, чтобы не писать ‘portfolio’ в условном теге, можно написать в скобочках вместо слова число ‘217’. Такая конструкция тоже будет прекрасно работать.

Какие условия могут быть?

Теперь, когда мы поняли основной принцип данного метода, можно немного расширить познания. Кроме страниц, в условия этих тегов можно записывать практически что угодно. Можно ставить условие, «если это главная страница», «если это пост с id ???», «если эта запись находится в такой-то категории».

Приводить полный список подобных условий, думаю, бессмысленно, на сайте wp-kama это было сделано задолго до меня, поэтому копируйте ссылку, смотрите полный список тегов: wp-kama.ru/function-cat/uslovnyie-tegi

Если у вас возникнут какие-то вопросы, пишите в комментариях или любым удобным вам способом через страницу «Контакты». Постараюсь ответить вам на все вопросы.

Теги: ,