J'ai créé une fonction pour ajouter une classe au corps, mais ne devrait s'appliquer qu'à un seul ID de page. Ce ne serait normalement pas un problème, mais cela casse la mise en page d'autres pages.
Fonction de filtrage
add_filter('body_class','add_blog_to_body_class');
function add_blog_to_body_class($classes) {
$classes[] = 'blog';
return $classes;
}
Ma condition (ça ne marche pas)
function add_blog_to_body_class($classes) {
$classes[] = 'blog';
if ( is_page('ID') ) {
return $classes;
}
}
J'ai emballé toute la fonction, la déclaration, le hook add_filter
et tout sans chance.
Comment cette fonction peut-elle fonctionner avec une seule page?
Il est important de renvoie toujours la valeur dans les rappels de filtre, sinon cela revient à ajouter le rappel __return_null()
.
Voici un exemple qui ajoute la classe blog
uniquement aux pages portant l'ID 40:
add_filter( 'body_class', 'add_blog_to_body_class' );
function add_blog_to_body_class( $classes )
{
if ( is_page( 40 ) )
$classes[] = 'blog';
return $classes;
}