/ Wordpress / Разные телефоны на разных шаблонах сайта

Разные телефоны на разных шаблонах сайта

HIT

29.07.2015

1647

Данная статья посвящена различным условиям вывода WP в зависимости от места нахождения на сайте (запись, страница, категория и т.д.).

Условия вывода

Вставляем в header

<?php 
if ( in_category( 'otparivateli' )) {
 echo'1-ый телефон';
} elseif ( is_category( '31' )) {
 echo '2-ой телефон';
} elseif ( is_page( '31' )) {
 echo '3-ий телефон';
} elseif ( is_home()) {
 echo '4-ый телефон';
} else {
 echo '5-ый телефон';
}
?>

Альтернативный код, выводим баннер на всех страницах кроме главной, либо кроме категории «Стать представителем»

<?php if ( in_category( 'stat-predstavitelem' ) || is_front_page() ): ?>

<?php else: ?>

<div id="banner"><a href="http://avonpredstaviteli.ru/category/stat-predstavitelem/"><img src="http://avonpredstaviteli.ru/wp-content/uploads/2016/03/stat-predstavitelem.jpg"></a></div>

<?php endif; ?>

|| — это означает или

Пояснения к is/in category

Если мы пишем in_category, то имеется в виду шаблон категории и все записи относящие к этой категории, !НО без подкатегорий с записями. Если нужно сделать условие и к подкатегориям с записями, нужно прописывать и их в массив:
<?php if ( in_category( array( 4, 21, 22 ) )): ?>
(4-категория, 21/22-подкатегории).
Если мы пишем is_category, то имеется в виду шаблон самой категории, без записей относящие к этой категории.
Писать можно либо номер категории (без кавычек), либо slug (с одинарными кавычками).

Другие варианты условий

is_single
is_page (единственная страница)
is_paged (несколько страниц через запятую)
is_author
is_category
is_tag
is_home (домашняя страница)
is_404

is_home() почему-то не срабатывает, если главная страница — то нужно писать условие is_front_page()

is_home() — это когда в настройках чтения Главная страница выбрана как «Последние записи»
is_front_page() — это когда в настройках чтения Главная страница выбрана как «Страница»

Еще нюанс: если в шаблоне index есть вывод последних записей, даже при том, что этот шаблон назначен Главной в виде страницы то это is_home(). А если убрать вывод последних записей, то он становиться is_front_page().

Если на Главной выводятся какие-либо произвольные выборки постов (query_posts), то необходимо в конце обнулять эти запросы wp_reset_query(); Если этого не сделать ломаются запросы is_front_page (по крайней мере в плагинах).

Если определенная запись

if ( is_single() ) — если запись (любая)
if ( is_single(2578) ) — если запись с ID 2578
if ( is_single( array(‘11717’, ‘11723’) ) ) — если одна из нескольких записей

[site-socialshare]
  • Комментарии
  • Вложения

Добавить комментарий

Пока нет комментариев. Будь первым!

Разные телефоны на разных шаблонах сайта
Разные шаблоны для разных категорий товаров
Рекомендации для васРазные шаблоны для разных категорий товаровOpttour.ru
Спасибо! Наш менеджер свяжется с Вами в течении 5 минут.