is_single() — определяет, является ли текущая отображаемая страница постом (записью)

Функция возвращает true в случае нахождения на страницах постов, вложений или произвольных типов записей, кроме типа page (страницы) — для их определения существует функция is_page().

is_single( $post = '' )

$post
(целое|строка|массив) — ID, ярлык или заголовок записи. Имеется возможность передавать несколько значений через массив.

Примеры использования функции

Парочка простых примеров. Если отображается страница поста, выведет его ID:

if( is_single() ){
	echo $post->ID;
}

И обратный вариант:

if( !is_single() ){
	echo 'Вы находитесь где угодно, но только не на странице поста.';
}

Два примера передачи ID поста в качестве параметра:

if( is_single(5) ){
	echo 'Вы просматриваете запись, ID которой равен 5';
}
if( is_single('5') ){
	echo 'Вы просматриваете запись, ID которой равен 5';
}

Проверка, отображается ли в данный момент пост с ID=5 ИЛИ пост с ID=14:

if( is_single( array(5, 14) ) ){
	echo $post->ID;
}

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

if( is_single('Кодекс WordPress') ){
	echo $post->ID;
}

Ещё один пример с массивом в качестве значения параметра:

if( is_single( array(5, 14, 'Кодекс WordPress', 'jquery', 11, 'posts-in-wordpress') ) ){
	echo $post->ID;
}
Миша Рудрастых Разработчик WordPress WooCommerce

Миша Рудрастых

Впервые познакомился с WordPress в 2009 году, и после двух лет мучений с Joomla и самописными движками это был просто бальзам на душу. С 2014 года меня можно встретить на WordCamp — официальной конфе по WP в Москве, иногда там выступаю. Также в настоящее время веду курсы по WordPress в Epic Skills в Питере.