Como excluir as páginas do resultado de busca ?

Uma maneira de se excluir as páginas do resultado de busca é usar o plugin Search Exclude.

Entretanto, como sou adepto da filosofia “Quanto menos plugins melhor”, outra solução interessante é adicionar um filtro no functions.php que adicione na busca apenas as categorias desejadas, excluindo assim todo o restante:

//Alter the WordPress search to return ONLY posts, no pages (For non-admins only)
function search_filter_pages($query) {
  if (!is_admin()) {
    if ($query->is_search) { 
      $query->set('post_type', 'post');
    }
  return $query;
  }
}

add_filter('pre_get_posts','search_filter_pages');

Posts Similares

  • Adicionando categorias, tags e taxonomias customizadas nas Mídias do WordPress

    Você já se sentiu frustrado pelo fato do WordPress não permitir que você especifique uma categoria ou uma tag nas imagens ou arquivos de mídia? Pois é, eu já, pois tive tal necessidade em um projeto, e me coloquei a pesquisas como resolver isso. Imagine como isso poder ser útil: criar uma galeria dinâmica de…

  • Exibindo a quantidade de comentários do Facebook em seu post

    ATENÇÃO: A API do Facebook foi alterada em Agosto de 2016, por isso a quantidade não é mais exibida e assim este código não funciona mais. Como não ficou claro se essa mudança é em definitivo ou não, mantivemos a postagem aqui mas provavelmente ela não funcionará mais. Em um dos projetos que trabalhei recentemente,…

  • A melhor forma de incluir o script JQuery no WordPress

    Vocês já repararam que o dashboard do WordPress usa JQuery ? Não ? Pois é, eu já havia reparado isso.. e já que o JQuery há é nativo do WordPress, não temos a necessidade de baixá-lo para uso de suas outras funcionalidades. Mediante isso, você deve estar se perguntando como se aproveitar disto e chamar…

  • Exibindo as últimas postagens de outro blog WordPress

    Para exibir as últimas postagens de outro site WordPress, você deve adicionar o código abaixo no local desejado. Você pode adicionar no sidebar.php para exibir em sua barra lateral. <?php include_once(ABSPATH.WPINC.’/rss.php’); $feed = fetch_rss(‘https://feeds.feedburner.com/tudoparawordpress’); $items = array_slice($feed->items, 0, 5); ?> <?php if (!empty($items)) : ?> <ul> <?php foreach ($items as $item) : ?> <li> <a…

  • Como alterar o logotipo da página de login do WordPress

    Por padrão, em todo site em WordPress que desenvolvemos, a página de login presente em seusite.com.br/wp-login.php possui o logo oficial do WordPress. Entretanto, muitos demonstram a vontade de alterar esta logo para a logo de seu site. Há um modo de alterar este logo e é isto que veremos na dica de hoje.

  • Mais cores para a seção administrativa do WordPress 3.8

    Uma das coisas que mais gostei no WordPress 3.8 foi o novo esquema de cores para a parte administrativa do WordPress. Não só das que vem como padrão, mas já vislumbrando a possibilidade de criar mais esquemas e dar uma cara diferente para cada projeto, os personalizando ainda mais. Se você não encontrar um esquema…

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

12 Comentários

  1. Muitooooo legal essa dica! Eu que o diga, ne! hahaha
    Uma coisa bem legal que descobri tb é que, ao invés de vc setar os IDs das categorias, vc pode definir que apareçam somente posts assim:
    $query->set('post_type', 'post');
    Dae não precisa ficar pondo número de categoria lá toda hora q vc quiser excluir uma nova! =D

  2. cara eu coloco o código no functions.php mais da é um erro (Erro de análise : erro de sintaxe, inesperado T_STRING em / home/ceara536/public_html/wp-content/themes/site-ceara-parapente/functions.php na linha 22) e ai o que é que eu caço?