@DeniSidorenko

Как сделать проверку по template-name и задать класс для body?

Добрый день. Сделал шаблоны страниц template-name.php и создал страницы выбрав нужный шаблон. Body и соответственно header грузится из header.php, однако для каждого body верстальщик задал конкретный класс который нужен при CSS. Теперь мне надо задать проверку if( is_name == name-template) { class body = "template-name class"} . ( Думаю понятно объяснил). Но я не знаю как получить в переменную название шаблона и задать класс. Подскажите пожалуйста
Для примера я задам след.
файл называется template-faq.php
<?php
/*
  * Template name: Template FAQ
  * */
?>

В начале такое название
и как задать в header.php проверку если грузит этот Template
Заранее спасибо, буду очень признателен за ответ
  • Вопрос задан
  • 60 просмотров
Решения вопроса 1
gwenn
@gwenn
В Wordpress есть функция is_page_template(). Например, is_page_template('templates/contact.php') если этот файл используется для генерации страницы, то функция вернет true.
Как-то делал подобное, вот пример:
<?php
function custom_body_classes() {
	if ( is_front_page() ) :
		$classes = body_class();
	elseif ( is_page_template('templates/contact.php') ) :
		$classes = body_class('contact_mod');
	elseif ( is_page_template('templates/projects.php') ) :
		$classes = body_class('inner_2_mod');
	else :
		$classes = body_class('inner_mod');
	endif;

	return $classes;
}

Возможно не самое изящное решение, но работает
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы