Obter a categoria ascendente (pai) através da subcategoria (filho) no WordPress com PHP - Bruno Devx - BR Criativus

post #2740

Obter a categoria ascendente (pai) através da subcategoria (filho) no WordPress com PHP

Publicado em: 24/04/2023 / Atualizado em: 24/04/2023

Categorias: BlogPHPWordpress

Caso você esteja criando uma pagina de categoria personalizada no wordpress e precisa obter o nome da categoria ascendente dessa subcategoria, este código pode lhe ajudar.

Por exemplo, imagine que deseja criar a seguinte estrutura de categorias:

Camisetas
– Manga longa
– Manga curta
– Regata

Na estrutura acima, “Camisetas” é a categoria de nível superior (pai), e todas as outras abaixo são categorias de nível inferior ou subcategorias (filhos).

Se o usuário acessar a categoria “Regata” não terá o nome da categoria “pai” na pagina. Para isso, é possível criar um shortcode com o seguinte código abaixo:

$category = get_queried_object(); // Obtém a categoria atual
if ($category->parent !== 0) { // Se a categoria atual não é uma categoria principal
  $parent_category = get_term($category->parent, 'category'); // Obtém a categoria ascendente
  echo $parent_category->name;
}

Caso esteja usando uma taxonomia customizada (CPT) você pode editar onde esta “category” pelo slug da taxonomia personalizada, como na estrutura de categorias de marcas que criei seguindo o exemplo abaixo:

Todas as marcas
– MarcaTop
– SuperCamisetas
– CamisaTextil

$category = get_queried_object(); // Obtém a categoria atual
if ($category->parent !== 0) { // Se a categoria atual não é uma categoria principal
  $parent_category = get_term($category->parent, 'marcas'); // Obtém a categoria ascendente
  echo $parent_category->name;
}

Publicações recomendadas:



Link Direto

Compartilhe esse conteudo nas redes sociais ou por mensagem usando o link direto abaixo. Basta copiar.

bruno.art.br/?p=2740

ID de Referência: 2740

Sugira uma publicação

Envie uma mensagem e sugira um publicação sobre um assunto que tenha dificuldades de resolver.

Clique aqui e entre em contato