X

Como Adicionar a Categoria do Post à Função body_class para Posts Individuais

Snippets por IsItWP

Você está procurando uma maneira de adicionar a categoria do post às classes do elemento body para posts individuais? Este pequeno trecho pegará todas as categorias atribuídas a um post e adicionará cada uma delas como uma classe body com o padrão sgl-cat-{nome-da-categoria}.

Instruções:

Tudo o que você precisa fazer é adicionar este código ao arquivo functions.php do seu tema ou a um plugin 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 trechos de código corretamente no WordPress, para não quebrar acidentalmente seu site.

Se você gostou deste trecho de código, considere conferir nossos outros artigos no site como: Revisão do CSS Hero: O Plugin nº 1 para Personalização de Temas WordPress.

Comentários   Deixe uma resposta

  1. Este é o meu post mais próximo do que preciso.
    Como posso usar este código para mostrar a categoria em um que contenha todas as informações sobre o post.
    Gosto de fazer isso porque quero criar estilos diferentes para cada categoria que tenho.
    Eu tentei colocar diretamente o body_class no mas não preciso de todas essas informações (home blog logged-in admin-bar no-customize-support wp-custom-logo .category uncategorized) eu só preciso disso (uncategorized) porque é a categoria do post.

  2. Funciona para mim. Obrigado!
    Curiosamente, quando copiei o código, a aspa simples foi copiada como aspa simples chinesa “‘’”, tive que alterá-la manualmente para que funcionasse. Não acredito que seja um problema seu, ainda estou tentando descobrir como isso aconteceu.

  3. Ótimo, mas você precisa de uma correção ou o código acima dará um erro fatal. O hook deveria ter:
    add_filter(‘body_class’,’add_category_to_single’,10,2) já que você passa 2 parâmetros.

    1. Bruce, O mundo é um lugar lindo por causa de pessoas como você! 😀
      Obrigado por me poupar algum tempo. 🙂

Adicionar um comentário

Ficamos felizes que você tenha escolhido deixar um comentário. Por favor, tenha em mente que todos os comentários são moderados de acordo com nossa política de privacidade, e todos os links são nofollow. NÃO use palavras-chave no campo do nome. Vamos ter uma conversa pessoal e significativa.

Checklist de Lançamento WordPress

O Checklist Definitivo para Lançamento de WordPress

Compilamos todos os itens essenciais da lista de verificação para o lançamento do seu próximo site WordPress em um e-book prático.
Sim, envie-me o eBook Gratuito!