Oi, pessoal! Tudo tranquilo com vocês? Espero que sim! Hoje vou abordar um assunto que várias vezes vi gente se contorcendo para fazer: modificar os resultados da busca no Drupal. Fazer isso, na verdade, é uma coisa bem fácil e agora demonstro na prática.
Todo mundo já deve saber que ao fazer uma instalação com o perfil Standard, temos uma série de coisas pré-configuradas que adianta muito na grande maioria dos desenvolvimentos. Uma dessas coisas é a instalação do módulo search, que nos dá a possibilidade de pesquisar no site através de uma caixa de busca, que nos dá um resultado assim:
Beleza! Lembrando que para a busca funcionar, ou melhor, para que os resultados apareçam corretamente, é preciso que o cron esteja rodando constantemente, para que o Drupal possa indexar internamente os conteúdos. Caso haja algum conteúdo publicado que não esteja indexado pelo Drupal, esse não aparecerá nos resultados da busca.
Para modificar a forma de exibição desses resultados, basta criar uma view com display do tipo page e colocar a url como search/node/%, exatamente desse jeito.
O que fiz foi uma view da mais simples possível, que exibe títulos, de qualquer tipo de conteúdo que esteja publicado, em ordem de publicação mais recente. Segue a imagem do resultado da busca com a view:
O que o Drupal faz? Ao acessar o endereço de busca (search/node/qualquer-coisa), ele sobrescreve o resultado de acordo com o que foi colocado na nossa view. Assim a gente pode colocar o que quiser (imagens, campos, informações do autor, etc) para exibir nos resultados da busca. O caractere porcentegem (%) na url da view é colocado assim para indicar variável e reconhece o que é passado na url da busca, transformando a saída da página. Lembrando que a gente pode aplicar o mesmo método para qualquer página do Drupal, incluindo as administrativas.
Uma das grandes vantagens de usar uma view sobrescrevendo os resultados de busca, além da customização da visualização, é que o conteúdo não precisa estar indexado pelo Drupal para aparecer no resultado, já que a consulta realizada pela busca passa a ser feita pela view. Assim, no mesmo momento em que um conteúdo for publicado, já aparece nos resultados.
Molezinha, né? Agora o restante é com vocês! Sejam criativos e coloquem o resultado como for mais adequado ao projeto. Qualquer dúvida ou questão é só deixar um comentário.
***
Este artigo está disponível na versão original em: http://drupaldeelite.com.br/blog/como-alterar-os-resultados-da-busca-padrao-com-views