Присвоить класс body как название раздела

Иногда нужно присвоить body класс с таким же наименованием как у текущего раздела.

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

Для этого в head надо прописать следующий код:

<? 
function bclass() {
   global $APPLICATION;
   $DirExp = explode('/', $APPLICATION->GetCurDir());
   if ($DirExp[1] !== ''): return ' class="'.$DirExp[1].'"'; else: return ' class="'.home.'"'; endif;}
?>

И в теге body:

<body<?echo bclass();?>>

Таким образом, body разделов будет присвоен класс соответствующий названию разделов. Body главной странице будет присвоен класс "home".

Перед doctype не забываем подключать ланговые файлы таким образом:

<?
IncludeTemplateLangFile(__FILE__);
?>

или используя ядро D7:

use Bitrix\Main\Localization\Loc;
Loc::loadMessages(__FILE__);

bitrixone © 2024