Suporte » Plugins » plugin de busca em categorias/tags pré estabelecidas

  • Boa tarde pessoal,
    Estou precisando de um plugin de buscas que funcione somente em categorias ou tags pré estabelecidas. Estou construindo um catálogo de soluções para uma empresa de consultoria com mais de 300 produtos, divididos por temas, tipos e grau de dificuldade. de uma forma simples é essa a estrutura:

    • temas:
    •tema1
    •tema2
    •tema ‘n’
    • tipo:
    •palestra
    •curso
    •consultoria
    • nível:
    •básico
    •intermediário
    •avançado

    até agora o mais próximo que encontrei foi o Search & Filter, da Designs & Code, mas este, embora seja muito bom, busca em TODAS as categorias e em TODOS as tags. preciso de um em que eu possa dizer quais categorias e tags podem ser pesquisadas…

    Alguém tem alguma dica???

    Obrigado!

Visualizando 1 resposta (de um total de 1)
  • Moderador Mario Valney

    (@mariovalney)

    WordPress Cleric of Fire

    Olá, a melhor coisa seria desenvolver essa busca.

    É bastante simples criar uma busca no WordPress, você precisa apenas:

    – Criar o formulário de busca que vai passar os inputs que você quiser.
    – Criar uma página que vai listar os resultados.

    Para a página de resultados, basta ler os valores (GET, provavelmente) e passar através de uma query. É só usar a classe WP_Query: vai ver que ela tem como configurar cada aspecto da busca.

    —-

    Porém, voltando à sua pergunta, que é sobre plugins, a melhor alternativa é procurar no repositório oficial mesmo: https://br.wordpress.org/plugins/search/search+by+category/
    Nessa lista tem um de WooCommerce se estiver usando e outros 2 que talvez sirvam, mas só testando.

    Uma outra alternativa seria tentar, via código, alterar a Query que o WordPress faz, usando o filtro pre_get_posts:

    add_action( 'pre_get_posts', function( $query ) {
    
      if ( ! is_admin() && $query->is_main_query() && $query->is_search() ) {
        $query->set( 'category__not_in', array( 1, 2, 3 ) );
        $query->set( 'tag__not_in', array( 1, 2, 3 ) );
      }
    
    });

    No exemplo assim, não esqueça de alterar os IDs para os IDs das categorias que você quer excluir da busca.

    • Esta resposta foi modificada 3 anos, 3 meses atrás por Mario Valney.
Visualizando 1 resposta (de um total de 1)
  • O tópico ‘plugin de busca em categorias/tags pré estabelecidas’ está fechado para novas respostas.