get_body_class() — возвращает массив классов, предназначенных для тела документа

Практически для каждой страницы WordPress присваивает уникальный набор классов CSS, и функция get_body_class() позволяет нам получить этот набор классов.

get_body_class( $class = '' )
$class
(массив|строка) Вы можете указать свои классы в виде массива или строки (разделяя пробелом), которые вы хотите ко всему прочему добавить к телу документа (если конечно функция будет использоваться для этого).

Функция малоизвеста, но лежит в основе более часто используемой функции body_class(). Как вы возможно знаете, body_class() выводит HTML-атрибут class вместе с его содержимым, типо этого class="CSS классы", однако, если вы заглянете в исходные файлы WordPress, то увидите следующую картину:

function body_class( $class = '' ) {
	echo 'class="' . join( ' ', get_body_class( $class ) ) . '"';
}

PHP-функция join() является аналогом функции implode(), которая превращает массив в строку, вставляя между элементами, указанный в параметрах, разделитель (в данном случае — пустая строка).

Пример

О том, каким образом происходит присвоение CSS-классов телу документа, вы можете почитать здесь.

$body_classes = get_body_class( 'misha myclass' );
print_r( $body_classes );
Array
(
	[0] => blog
	[1] => logged-in
	[2] => admin-bar
	[3] => no-customize-support
	[4] => custom-background
	[5] => misha
	[6] => myclass
)

Оставить комментарий / вопрос

phpjsHTMLCSSSQLПросто код
  Для того, чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или авторизуйтесь на сайте.
Получайте новости блога по email или следите за мной в социальных сетях.
  • Владимир: и на третьей строке не хватает скобки ) закрывающей if :)

  • Миша: Добрый вечер! Рекомендую получить ID пользователя через функцию get_current_user_id().

  • Дмитрий: Миша, подскажите пожалуйста, я использую такой редирект, но он не срабатывает: add_action( 'template_redirect', funct...

  • Миша: Ну как не определена - это аргумент функции. Или я просто вас не до конца понимаю.

  • Артем: Ага, понял. Вот только почему $args? Она же нигде не определена, по логике должна быть переменная $true_field_params или...