Está procurando uma maneira de adicionar a categoria da postagem às classes do elemento body para postagens individuais? Esse pequeno snippet pegará todas as categorias atribuídas a uma publicação e adicionará cada uma delas como uma classe de corpo com o padrão sgl-cat-{category-name}
.
Instruções:
Tudo o que você precisa fazer é adicionar esse código ao arquivo functions.php do seu tema ou em um plug-in específico do site:
add_filter(‘body_class’,’add_category_to_single’,10,2); function add_category_to_single($classes, $class) { if (is_single() ) { global $post; foreach((get_the_category($post->ID)) as $category) { $classes[] = 'sgl-cat-'.$category->category_nicename; } } return $classes; }
Observação: Se esta é a primeira vez que você adiciona trechos de código no WordPress, consulte nosso guia sobre como copiar/colar corretamente trechos de código no WordPress, para não danificar seu site acidentalmente.
Se você gostou desse snippet de código, considere dar uma olhada em nossos outros artigos no site, como: CSS Hero Review: #Plugin nº 1 de personalização de temas do WordPress.
This is my closest post to what I need.
How can I use this code to show the category in an that contain all information about de post.
I like to do this because I want to create different style for every category that I have.
I try dirrectly put the body_class in the but I don’t need all this informatiocn (home blog logged-in admin-bar no-customize-support wp-custom-logo .category uncategorized) I only need this (uncategorized) because is the category of the post.
It works for me. Thank you!
Interestingly, when I copy the code, the single quote was copied as Chinese single quote “‘’”, I had to manually change it to make it work. I don’t believe it is your problem, still trying to figure out how that happened.
Great, but you need one correction or the above code will give a fatal error. The hook should have:
add_filter(‘body_class’,’add_category_to_single’,10,2) since you pass in 2 parameters.
Bruce, The world is a beautiful place because of people like you! 😀
Thanks for saving me some time. 🙂