Suporte » Gerenciamento de conteúdo » Recuperar ID’s de Categorias

  • rlopes2

    (@rlopes2)


    Boa Tarde.
    Criei uma single-produtos.php e eu preciso verificar de qual categoria é o produto que esta sendo exibido para poder imprimir o nome da categoria.
    pesquisando cheguei nesta solução:

    <?php if( query_posts('cat=3')) : ?>
          <h1><strong>Para Meninos</strong></h1>
          <?php elseif(query_posts('cat=4')) : ?>
         <h1><strong>Para Meninas</strong></h1>
        <?php else : ?>
       <h1><strong>Diversos</strong></h1>
     <?php endif; ?>
    

    Porém não está funcionando, alguém consegue me dar uma ajuda?

Visualizando 1 resposta (de um total de 1)
  • Everaldo Matias

    (@everaldomatias)

    @rlopes2 você pode usar a função get_the_category (https://developer.wordpress.org/reference/functions/get_the_category/). Ela retorna um array com os termos definidos para esse post e então fazer sua verificação. Segue um exemplo.

    
    <?php
    // Retorna um array com as categorias do post
    $get_the_category = get_the_category();
    
    // Verifica se o post está marcado nas determinadas categorias
    if ( in_array( 'Para Meninos', $get_the_category ) ) {
    	// Categoria Para Meninos
    	echo "<h1><strong>Para Meninos</strong></h1>";
    } elseif( in_array( 'Para Meninas', $get_the_category ) ) {
    	// Categoria Para Meninas
    	echo "<h1><strong>Para Meninas</strong></h1>";
    } else {
    	// Todas as outras Categorias
    	echo "<h1><strong>Diversos</strong></h1>";
    }
    ?>
    

    Importante: Estamos falando de posts, correto? E outra informação importante é que se o mesmo produto/post estiver marcado com duas categorias, no caso Para Meninos e Para Meninas, a verificação vai parar em Para Meninos, que é a primeira verificação que o código fará.

    • Esta resposta foi modificada 6 anos atrás por Everaldo Matias. Razão: Melhorando a apresentação (indentação) do código
Visualizando 1 resposta (de um total de 1)
  • O tópico ‘Recuperar ID’s de Categorias’ está fechado para novas respostas.