• Olá pessoal,

    Existem algumas páginas criadas no meu site que podem ser acessadas normalmente para todos no meu site e por isso, podem aparecer nos resultados de busca do meu site. Mas tem alguns páginas que só podem ser acessadas pelo usuário em determinadas circunstâncias, e por isso não deve aparecer nos resultados de busca do meu site.

    Então gostaria de saber como eu faço para ocultar algumas páginas dos resultados de busca?

    Eu encontrei esse código abaixo para ser inserido no functions.php aonde ele diz que é apenas para mostrar os posts.

    function SearchFilter($query) {
    if ($query->is_search) {
    $query->set('post_type', 'post');
    }
    return $query;
    }
     
    add_filter('pre_get_posts','SearchFilter');

    Mas, no caso ele estará ocultando todas as páginas, sendo que desejo ocultar apenas algumas.

    Agradeço a ajuda.
    Rodrigo

Visualizando 1 resposta (de um total de 1)
  • Moderador Ramon Ahnert

    (@rahmohn)

    Olá, @vejapixel.

    Você pode atualizar o código que você postou para:

    function SearchFilter( $query ) {
       if ( $query->is_search ) {
          $query->set( 'post__not_in', array( 3, 7, 10 ) );
       }
    }
     
    add_filter( 'pre_get_posts','SearchFilter' );

    Você poderia usar também “category__not_in” ou “tag__not_in” no lugar de “post__not_in”.

    Se você quiser dar a opção de excluir uma página da busca para o usuário, você pode utilizar o plugin Search Exclude.

Visualizando 1 resposta (de um total de 1)
  • O tópico ‘Ocultar páginas dos resultados de busca do site’ está fechado para novas respostas.