Suporte » Desenvolvendo com WordPress » Mostrar somente o nome da categoria filha

  • Resolvido olaedu

    (@olaedu)


    Olá.
    Gostaria de saber como mostro SOMENTE o nome da categoria filha.
    Exemplo:
    Fruta (cat. mãe) > Uva (categoria filha)

    Logo, o loop ficaria:
    Categoria: Uva
    Título do post
    corpo do post

    Obrigado pela ajuda.
    Estou adorando esse fórum!

Visualizando 9 respostas - 1 até 9 (de um total de 9)
  • Olá olaedu,

    Veja se é isso
    <?php single_cat_title(); ?>

    abs

    Criador do tópico olaedu

    (@olaedu)

    Infelizmente não, George.

    O que aconteceu:
    O post está associado a categoria Cultura (mãe) > Cinema (filha). E, além dessas 2, também está associado à categoria “Destaque”. Não sei pq apareceu somente o nome “Destaque”, que não era nem para aparecer…

    Eduardo

    (@eduardozulian)

    Por que cê num faz a mesma coisa do outro tópico que voce postou, apenas verificando se o $post->post_parent é diferente de 0? Isso vai te passar o nome apenas das páginas filhas.

    Criador do tópico olaedu

    (@olaedu)

    Eu não sei PHP, mas isso que vc falou resolveu meu problema.
    Muito obrigado Eduardo! 🙂

    Criador do tópico olaedu

    (@olaedu)

    Porém, gerou outro problema…
    Agora se o post não tiver uma categoria filha ele não mostra nada.

    Exemplo:
    Se o post estiver associado a categoria Fruta > Uva, ele mostra Uva, mas se o post estiver associado a categoria Fruta (somente), ele não mostra nada. 🙁

    Eis o novo código:
    <?php $parentscategory =””;
    foreach((get_the_category()) as $category) {
    if ( $category->category_parent != 0 && $category->cat_ID != 456 ) {
    $parentscategory .= ‘ cat_ID) . ‘” title=”‘ . $category->name . ‘”>’ . $category->name . ‘, ‘;
    }
    }
    echo substr($parentscategory,0,-2); ?>

    olaedu,

    Dá pra colocar várias condições nesse código php até conseguir fazer o que vc quer. Mas me parece que vai ficar uma mega gambiarra q depois vai ser ruim de mudar qualquer coisa, e também difícil de enteder o código.

    Dá uma olhada na hirearquia de templates do WordPress:
    http://codex.wordpress.org/Template_Hierarchy

    e veja se não é o caso de você fazer um template para a listagem de determinadas categorias de um jeito (mostrando só a filha), e de outras em outro arquivo.. com outro template independente.. fica mais organizado e mais fácil de administrar

    Leo,,

    eu uso um plugin pra fazer isso e funciona muito bem: http://www.martinish.com/blog/2008/12/get-unique-categories-in-wordpress/

    Criador do tópico olaedu

    (@olaedu)

    O plugin ainda mostra a categoria destaque…

    Alguém poderia me revelar como seria o meu código acima com as gambiarras mesmo???

    Obrigado! 🙂

    Eu não entendi essa sua concatenação do ‘cat_ID)’ com title e tal.. mas a logica está aí. espero q ajude

    abs

    Leo,,

    <?php
    $printou = false
    $parentscategory =””;
    foreach((get_the_category()) as $category) {
    if ( $category->category_parent != 0 && $category->cat_ID != 456 ) {
    $parentscategory .= ‘ cat_ID) . ‘” title=”‘ . $category->name . ‘”>’ . $category->name . ‘, ‘;
    $printou = true;
    }
    }

    if (!$printou) {
    foreach((get_the_category()) as $category) {
    if ( $category->cat_ID != 456 ) {
    $parentscategory .= ‘ cat_ID) . ‘” title=”‘ . $category->name . ‘”>’ . $category->name . ‘, ‘;
    }
    }
    }

    echo substr($parentscategory,0,-2); ?>

Visualizando 9 respostas - 1 até 9 (de um total de 9)
  • O tópico ‘Mostrar somente o nome da categoria filha’ está fechado para novas respostas.