Como exibir taxonomia infantil na página de arquivo da Taxonomia dos pais

No passado, mostramos como exibir subcategorias em páginas de categoria no WordPress. Recentemente, enquanto trabalhava com Taxonomias Personalizadas, encontramos uma necessidade de exibir taxonomias infantis na página do arquivo de taxonomia pai. Depois de fazer um pouco de pesquisa, não encontramos um único tutorial que cubra esta questão. Neste artigo, mostraremos como exibir uma lista de taxonomias infantis em páginas de taxonomias.

Abra seu arquivo de modelo de taxonomia personalizado que pode parecer: taxonomia- {taxonomyname} .php e cole o seguinte código sempre que quiser exibir a lista:

pai == 0) {
 wp_list_categories ('taxonomy = YOUR-TAXONOMY-NAME & depth = 1 & show_count = 0
 & title_li = & child_of = '.  $ term-> term_id);
 } outro {
 wp_list_categories ('taxonomy = YOUR-TAXONOMY-NAME & show_count = 0
 & title_li = & child_of = '.  $ termo-> pai);
 }
 ?> 

Não se esqueça de substituir YOUR-TAXONOMY-NAME pelo nome da sua taxonomia.

Resultado final:

Lista de Taxonomias

Explicação:

Nós estamos usando get_term_by para consultar as informações da taxonomia atual por slug. Por exemplo, se sua taxonomia é chamada de tópicos e você está em uma página / tópicos / nutrição / então a variável do termo $ puxará todos os dados relacionados à página do termo específico em que você estiver.

No projeto em que trabalhávamos, a taxonomia dos tópicos era hierárquica, assim como categorias. Então, decidimos executar um condicional usando $ term-> variable pai. Esta variável exibe o ID da taxonomia dos pais. Então, se você estiver na nutrição da taxonomia, que é a taxonomia dos pais, então $ term-> parent ecoará 0. Por isso, dissemos se $ term-> parent == 0 usamos a função wp_list_categories () para exibir os termos do nosso costume taxonomia que é filho do termo em qual página você está. Nós conseguimos isso usando $ term-> term_id como a variável child_of.

Agora, se você for para a página de taxonomia infantil, ficaria em branco porque o $ termo-> pai não seria mais igual a 0. Em uma página de taxonomia infantil, $ term-> parent exibe a ID da categoria pai. Então, corremos uma declaração else usando a mesma função wp_list_categories (), exceto que mudamos $ term-> term_id para $ term-> parent.

Lá está você. Esperamos que isso ajude a todos que estavam procurando por uma solução.