1
resposta

Painel Admin WP - Categorias ou Taxonomias Filtros de listagem

Estou montando um plugin onde tenho um gerenciamento de taxonomias personalizadas.

Eu gostaria permitir que o usuário do plugin tenha uma tela só para cadastrar e ler apenas as categorias de nível 0

Ex: Comodidades Disponibilidades

Depois uma outra tela para ele escolher entre as Categorias cadastradas e cadastrar suas subcategorias com ícones

Comodidades -> (Café da Manhã, Internet, Lavanderia) Disponibilidades - > (Serviços Leva e Trás, Estacionamento, etc)

1) Já consegui:

  • Menu geral para cadastro das categorias e subcategorias (não é o ideal)
  • Cadastrar ícones nas categorias e subs

2) O que gostaria:

  • Como ativar o filtro para mostrar somente as categorias de nível 1 na tela, permitido usar o editor já existente do WP para permitir que o cliente adicione ou remova as categorias nível 0?
  • Como carregar somente as subcategorias de uma categoria mãe, utilizando a mesma tela do editor padrão do WP, para que o cliente possa ver, editar, adicionar ou excluir apenas daquela categoria selecionada?

Obs.: Da forma que está até dá para usar, mas acredito que possa ao invés de "recriar a roda" fazendo formulário e receptores de categorias para este fim, usar o existente e apenas fazer alguns ajustes. Porém acho as explicações no manual do developers do WP um pouco confuso.

1 resposta

Olá Alexandre! Tudo ok contigo?

Pelo que entendi, você está desenvolvendo um plugin para gerenciar categorias e subcategorias personalizadas no WordPress. Você já conseguiu criar um menu geral para cadastrar as categorias e subcategorias, além de adicionar ícones a elas. Agora, você gostaria de saber como ativar um filtro para mostrar apenas as categorias de nível 1 na tela e como carregar apenas as subcategorias de uma categoria mãe, utilizando o editor padrão do WordPress.

Para ativar o filtro e mostrar apenas as categorias de nível 1 na tela, você pode utilizar a função get_categories() do WordPress. Essa função permite que você obtenha todas as categorias de um determinado tipo de taxonomia. Você pode passar um parâmetro parent com o valor 0 para buscar apenas as categorias de nível 1. Por exemplo:

$categories = get_categories( array(
    'taxonomy' => 'sua_taxonomia',
    'parent'   => 0
) );

Em relação a carregar apenas as subcategorias de uma categoria mãe utilizando o editor padrão do WordPress, infelizmente não é possível fazer isso diretamente. O editor padrão do WordPress não possui essa funcionalidade de filtrar as subcategorias. No entanto, você pode criar uma interface personalizada utilizando a função wp_dropdown_categories(), que cria um dropdown com as categorias de uma determinada taxonomia. Você pode passar o parâmetro child_of com o ID da categoria mãe para buscar apenas as subcategorias dessa categoria. Por exemplo:

wp_dropdown_categories( array(
    'taxonomy' => 'sua_taxonomia',
    'child_of' => $categoria_mae_id
) );

Dessa forma, o cliente poderá ver, editar, adicionar ou excluir apenas as subcategorias da categoria selecionada.

Espero que essas informações possam te ajudar a alcançar o resultado desejado. Se tiver mais alguma dúvida, é só me dizer!

Espero ter ajudado e bons estudos!