body_class
Дозволяє змінити список CSS класів, які надаються тегу <body>
.
Цей хук спрацьовує під час виклику однойменної функції body_class() , яку потрібно викликати всередині тега<body <?php body_class( $class ) ?>>
Використання
add_filter( 'body_class', 'wp_kama_body_class_filter', 10, 2);
/**
* Function for `body_class` filter-hook.
*
* @param string[] $classes На array of body class names.
* @param string[] $class An array of additional class names added to the body.
*
* @return string[]
*/
function wp_kama_body_class_filter( $classes, $class ){
// Filter...
return $classes;
}
-
$classes
(рядок[]) -
Масив CSS класів, які будуть додані до тегу
body
. -
$class
(рядок[]) -
Масив додаткових CSS класів, які були передані як параметр у функцію
get_body_class($class) або
body_class($class) .
Приклади
#1 Заміна одного класу іншим
Живий приклад, коли блокувальник реклами через клас single-ads
у body
накладав атрибут display: none !important; на сторінках записів типу ads
. Замінимо цей “поганий” клас, щоб блокувальник не реагував.
add_filter( 'body_class', 'remove_body_ads_class' );
function remove_body_ads_class( $classes ) {
foreach ( $classes as $index => $class ) {
if ( 'single-ads' === $class ) {
$classes[ $index ] = 'single-money';
}
}
return $classes;
}
список змін
З версії 2.8.0 | Введено. |
Де викликається хук
body_class
wp-includes/post-template.php 836
$classes = apply_filters( 'body_class', $classes, $class );
Де використовується хук у WordPress
Використання не знайдено.