J'utilise body_class();
pour styler différentes sections d'un site wordpress en fonction de leur classe de corps. Les styles de page descendent de .page-template
, les styles de blog descendent de .single-post
et/ou .blog
etc.
J'ai créé un type de message personnalisé "Produits" pour la section produits du site et souhaite styler spécifiquement cette section à l'aide de sa classe body. Malheureusement, body_class();
attribue également à la page unique des types de publications personnalisées la classe .blog
, ce qui en fait un grand nombre. Les styles de blog prévalent sur les styles de produits, ce qui est très frustrant.
Existe-t-il un moyen de supprimer la classe "blog" pour mes pages uniques de type publication personnalisée?
Merci!
Vous pouvez utiliser le filtre body_class
pour vérifier si vous êtes sur votre type de publication personnalisé. Si c'est le cas, supprimez simplement la classe blog
comme ceci:
function remove_blog_from_cpt_classes($classes, $class){
global $post;
if ($post->post_type != "products"){
return $classes;
}else{
foreach($classes as &$str){
if(strpos($str, "blog") > -1){
$str = "";
}
}
}
return $classes;
}
add_filter("body_class", "remove_blog_from_cpt_classes", 10, 2);
J'espère que cela t'aides