Através dos formulários de buscas que os sites permitem a seus visitantes um caminho direto a informação que eles procuram. Esse atalho que o usuário pode optar por percorrer nem sempre leva ao resultado esperado e em alguns casos acaba por dificultar ainda mais o acesso ao conteúdo desejado.

No artigo serão abordadas algumas técnicas que permitem ao template que será trabalhado oferecer uma melhor interação com o que foi requisitado pelo visitante e retornar melhores respostas para ele, mesmo quando nenhum resultado foi encontrado. Os códigos propostos deverão ser inseridos no arquivo responsável por exibir os resultados, de modo geral deverá ser o ‘search.php’; porém depende de cada tema e sua estrutura.

1. INFORMAR QUE UMA BUSCA ESTÁ SENDO REALIZADA

Essa questão é primordial para localização do visitante dentro do site e também como confirmação da ação de pesquisa que ele realizou. Insira antes da listagem dos resultados obtidos pela pesquisa algum texto que informe que a busca foi corretamente submetida e quais foram os termos utilizados para realização da mesma. Dessa maneira você confirma ao visitante o funcionamento dos recursos do teu site e também identifica os resultados como relacionados diretamente a busca, evitando confusões.

<?php
// Exibindo um título para a busca realizada com os termos informados pelo usuário
if ( is_search() )
     echo '<h3>Resultados da pesquisa para: <u>' . $_GET[ 's' ] . '</u></h3>';
?>

2. RESULTADOS NÃO ENCONTRADOS

Um grande problema ocorre quando a busca que o usuário deseja não retorna resultados. Isso ocorre pois na maioria dos casos os templates não estão corretamente preparados para esse caso. Prova disso é a simples exibição de uma única linha de texto informando que o conteúdo do site não possue relação com os termos pesquisados.

Trabalhe o arquivo responsável por esse retorno de modo a oferecer mais opções ao visitante. Um bom exemplo disso é descrever brevemente qual o foco do seu projeto e quais assuntos ele aborda; dessa maneira o visitante entenderá que a busca realizada pode não ter retornado resultados em razão do assunto não ter relação com o propósito principal do site, por exemplo.

3. LINKS DE AJUDA

Tratando ainda da exibição de informações para resultados não encontrados, ao deparar com essa situação é possível que a próxima ação que seu visitante venha a executar seja a saída do teu site, no entanto é possível diminuir a probabilidade disso ocorrer oferecendo a ele outras opções de conteúdo.

Explore as páginas mais bem aceitas pelos visitantes, as mais comentadas ou aquelas que você acredita possuir o maior poder de atrair a atenção de seus visitantes; sempre dando um maior destaque com textos e imagens que ao menos agucem a curiosidade de quem está vendo esse conteúdo. Como foi abordado acima, uma resposta negativa para a busca pode ser em razão dos termos e foco do site não serem os mesmos; porém certamente existe uma relação entre eles, caso contrário o visitante sequer estaria em teu site.

4. SEGMENTAÇÃO DOS RESULTADOS

Normalmente os resultados são exibidos da mesma forma que a paginação habitual do site. Caso a página que exibe os resultados da busca não esteja com boa aceitação do seu público experimente integrar ao seu projeto uma busca segmentada com recursos avançados do tipo buscar apenas no título, em determinada categoria, etc.

5. EXIBIR QUANTIDADE DE RESULTADOS

É importante para quem faz a busca saber a quantidade de respostas que ela retornou. Esse simples contador diz ao visitante se ele precisa ou não aprofundar mais a busca com termos específicos. Suponhamos que em um blog de culinária, uma visitante digite na busca o termo ‘bolo’ e são recuperadas 250 receitas de bolo. É pouco provável que ela tenha tempo e disposição para procurar entre tantos resultados. Entretanto ao ver a quantidade de respostas ela pode melhorar sua busca incorporando ingredientes ou informações específicas que ela deseja encontrar nesse bolo como por exemplo ‘bolo doce’ e ‘bolo chocolate’.

<?php
global $wp_query;
echo '<p>Foram encontrados <strong>' . $wp_query->found_posts . '</strong> resultados para sua busca.</p>';
?>

6. GRIFAR TERMOS PESQUISADOS

Dê um destaque maior para os termos informados pelo visitante permitindo que esse encontre mais facilmente o quê procura, dada a relevância do resultado para seu propósito. No arquivo dos resultados de busca faça:

<?php
$busca = $_GET[ 's' ];
$termos = explode( ' ', $busca );
// para grifar termos do resumo ou conteúdo use get_excerpt e get_content respectivamente
$titulo = get_the_title();
foreach ( $termos as $termo )
     $titulo_grifado = str_replace( $termo, '<span class="marca">' . $termo . '</span>', $titulo );

echo $titulo_grifado;
?>

Para exibir a marcação dos termos é preciso ainda formatar a folha de estilo do tema em uso, com por exemplo:

.marca { background: #dfc;}

Abraços

Autor: Mazetto

Blog do Autor | Artigos do Autor:

Desenvolvedor web especializado em WordPress. Trabalha como freelancer de diversas agências do Brasil na criação de plugins, templates e consultoria à ferramenta.

Templates Wordpress que Recomendamos:

  • U-Design WordPress Theme
  • Tersus - Responsive WordPress Theme
  • Modernize - Flexibility of Wordpress
  • Good Space - Responsive Minimal WP Theme
  • Sterling - Responsive Wordpress Theme
  • Karma - Clean and Modern Wordpress Theme
  • Doover Premium WordPress Theme
  • MayaShop - A Flexible Responsive e-Commerce Theme
  • SmartStart WP - Responsive HTML5 Theme
  • Striking Premium Corporate & Portfolio WP Theme
  • Core Minimalist Photography Portfolio
  • King Size - fullscreen background WordPress theme

Gostou deste artigo? Então torne-se fã do Blog no Facebook!


Theme Forest

Comentários dos Alunos


  1. Boni
    27.05.2011

    Ótima Dica. Principalmente no contador de resultados e em grifar os termos pesquisados. Eram coisas que sempre tive vontade de saber, mas nunca fui atrás.

    Responder


  2. Daniel Antunes
    30.05.2011

    Legal, só uma dica: é boa prática tratar os dados informados pelos usuários, principalmente em outputs… no exemplo abaixo devemos usar ao menos um esc_html(), veja:

    echo ‘Resultados da pesquisa para: ‘ . esc_html( $_GET[ 's' ] ) . ”;

    Abraços

    Responder


    • Mazetto
      16.06.2011

      Com certeza Daniel, muito bem visto. O WordPress oferece também a get_search_query() que vem tratada. Abraços.

      Responder


  3. Almy
    30.05.2011

    Interessante
    Vou tentar implementar la no meu site
    obrigado pela dica!

    Responder


  4. Pedrovisk
    24.06.2011

    E ai pessoal… tenho um problema no meu blog. Quando o pessoal encontra meu blog no google por termos criados pelo mesmo, ao entrar no pagina, diz que não foi encontrado nenhum resultado.

    Alguem pode me ajudar?

    Responder


  5. Pedrovisk
    24.06.2011

    E para voces entederem mais, é o caso do numero “2″ aqui neste artigo.

    Portanto, quero algum codigo ou plugin que quando o pessoal encontrar essa pagina, fazer com que mostre os termos em outros posts.

    Responder


  6. Luan Semensato
    15.02.2012

    Olá.
    Sobre o tópico 2:
    Como eu configuro uma página específica para busca sem resultados?
    Teria alguma forma de mostrar determinado conteúdo apenas para essa busca?

    Responder

Comente o Artigo!

RSS
Twitter
Facebook
Comentários
ASSINANTES
SEGUIDORES
FÃS
COMENTÁRIOS
11485

Subscrever Newsletter
Subscreva a Newsletter:


Elegant Themes

Wix

Theme Forest

Mojo Themes



Assine a Escola Wordpress Assine a Newsletter da Escola Wordpress Escola Wordpress no Twitter Escola Wordpress no Facebook Escola Wordpress no Youtube Escola Wordpress no Google Buzz