Классовый вопрос
В WordPress 2.8 появилась замечательная функция body_class(), позволяющая одним махом получить для body кучу классов, зависящих от текущего контента. Незаменимая вещь для контекстной раскраски и навигационной подсветки. Однако у функции есть маленький недостаток — нет классов рубрик у одиночного поста.
К счастью, благодаря нормальному API движка (за что Создателям низкий поклон), недостающий функционал компенсируется небольшим кодом
add_filter('body_class', 'post_cat_body_class'); function post_cat_body_class($class) { if (is_single()) foreach (get_the_category() as $cat) $class[] = 'in-category-' . $cat->slug; return $class; }
Этот код, как обычно, вставляем в functions.php Темы или оформляем в виде плагина.
да
Я вначале использовал ее, теперь не использую, она выводит очень много классов, которые могут быть не желательны и не зависят от разработчика темы.
Когда посылал тему в репозиторий тем на wordpress.org, одним из замечаний к теме было отсутствие body_class(). (в конце я так и не смог все требования сделать, т.к. 2 из них просто не понял ((( )
А для поста в ВП есть функция — post class(), ее правда для элемента body указать нельзя, но она тоже достаточно много классов выводит, и можно благодаря им раскрасить в css любые посты.
И это очень хорошо. Потому что кроме разработчиков Тем, еще есть разработчики плагинов/виджетов.
Ну и толку от нее, если нужно в зависимости от рубрики, скажем, перекрашивать сайдбар?
А как это у вас if без фигурных скобок работает?
Достигается упражнениями! (с)