Blog SearchWP

Tutoriais, Dicas e Recursos do WordPress para Ajudar a Crescer Seu Negócio

Como corrigir pesquisa lenta no WordPress 7 correções

A maioria dos conselhos para uma busca lenta no WordPress a trata como um site lento, e é por isso que raramente ajuda. O atraso geralmente está na consulta do banco de dados que é executada toda vez que um visitante pressiona buscar.

Por padrão, o WordPress transforma cada palavra de busca em um padrão como %palavra% e a compara com o título, o resumo e o conteúdo de seus posts e páginas. Comprimir imagens ou adicionar uma CDN acelera o carregamento das páginas, mas nenhuma delas encurta essa consulta.

A maneira de acelerar a busca do WordPress é impedir que essa varredura ocorra em cada consulta. Um índice de busca faz o trabalho com antecedência, para que o WordPress possa procurar por palavras correspondentes em vez de ler cada post.

Neste artigo, mostraremos 7 correções que visam a própria consulta de busca, em ordem de impacto, além de como saber quais seu site precisa.

Por Que a Busca do WordPress é Tão Lenta?

A busca integrada do WordPress executa uma nova consulta ao banco de dados toda vez que alguém busca.

Essa consulta pega cada palavra que o visitante digitou e a compara com o título, o resumo e o conteúdo dos posts em seus tipos de postagem pesquisáveis.

O caractere curinga % no início de cada padrão é o que o torna lento. De acordo com a documentação do MySQL sobre índices, um índice regular não pode ser usado para uma correspondência que começa com um caractere curinga, então o banco de dados precisa ler o texto em vez disso.

Pense em um bibliotecário que lê todos os livros da prateleira toda vez que alguém pergunta sobre um tópico, em vez de consultar o catálogo de fichas. Em um blog pequeno, ninguém percebe a espera.

À medida que seu site cresce para centenas ou milhares de posts, páginas e produtos, cada busca tem mais texto para ler.

Buscas mais longas também custam mais, porque o WordPress adiciona outro conjunto de correspondências para cada palavra extra e exige que todas elas correspondam.

Agora, vamos ver as sete correções abaixo para acelerar a própria consulta de busca.

Essas correções são ordenadas por impacto, começando com aquela que diz onde focar. Aqui está uma visão geral rápida de todas as 7 maneiras.

1. Descubra o Que Está Deixando Sua Busca Lenta Primeiro

Antes de mudar qualquer coisa, é útil ver para onde o tempo está indo.

Existem plugins gratuitos para WordPress que listam as consultas do banco de dados em cada página e sinalizam as lentas. Ele também mostra qual plugin, tema ou parte do núcleo do WordPress é responsável por cada consulta.

Após instalá-lo, faça uma busca em seu site e abra o menu Query Monitor na barra de administração.

Se a consulta de busca for a mais lenta da página, as correções de 2 a 5 ajudarão mais. Se o próprio servidor for o gargalo, pule para a correção 7.

Se a consulta de outro plugin for a mais lenta, verifique as configurações desse plugin ou pergunte primeiro ao desenvolvedor dele.

E se a busca não retornar nada, em vez de resultados lentos, nosso guia sobre como corrigir a busca do WordPress que não funciona cobre esse problema.

2. Substitua a Varredura do Banco de Dados por um Índice de Busca

O maior ganho de velocidade vem de não escanear posts no momento da busca.

Um plugin de busca com seu próprio índice lê seu conteúdo uma vez, com antecedência, e armazena cada palavra em uma tabela de consulta.

Quando alguém busca, o plugin consulta essas palavras em vez de ler cada postagem. Recomendamos o SearchWP para isso.

SearchWP - Melhor Plugin de Busca para WordPress

SearchWP é o melhor plugin de busca para WordPress, confiável por mais de 50.000 proprietários de sites. Ele cria um índice de busca dentro do seu próprio banco de dados do WordPress e assume a busca padrão do seu site, sem necessidade de alterações no tema.

Aqui estão alguns recursos principais oferecidos pelo SearchWP que ajudam na velocidade da busca:

  • Seu próprio índice de busca. O SearchWP armazena o conteúdo das fontes que você escolher em tabelas de índice dedicadas, para que uma busca consulte palavras em vez de escanear posts.
  • Indexação em segundo plano. Conteúdo novo e atualizado é indexado automaticamente após você salvá-lo, em curtas passagens em segundo plano.
  • Controle sobre o que é indexado. Você decide quais tipos de conteúdo e campos cada motor de busca inclui, o que mantém o índice enxuto.
  • Busca Ajax ao vivo. Os resultados aparecem em um menu suspenso conforme os visitantes digitam, para que eles vejam as correspondências antes de pressionar Enter.

Para começar, inscreva-se no site do SearchWP e vá para a aba Downloads em sua conta. A partir daí, baixe o arquivo ZIP do plugin e copie sua chave de licença.

Baixar plugin SearchWP da área da conta

Em seguida, você vai querer instalar e ativar o plugin em seu site WordPress.

Após a ativação, clique em Iniciar o Assistente de Integração e siga as instruções na tela. Assim que a configuração for concluída, o SearchWP criará seu índice em segundo plano.

O assistente de integração do SearchWP constrói um índice de busca

A partir daí, as buscas através do formulário de busca padrão do seu site passam pelo índice do SearchWP em vez da varredura padrão.

3. Busque Apenas o Conteúdo Que os Visitantes Precisam

Um índice menor tem menos entradas para verificar a cada pesquisa.

O SearchWP indexa apenas as fontes que você habilita em cada motor, então vale a pena remover qualquer coisa que os visitantes nunca buscam.

Para fazer isso, vá para SearchWP » Algoritmo e clique em Fontes e Configurações.

Editar ou adicionar novos mecanismos de pesquisa no WordPress

A partir daí, desmarque quaisquer fontes que seus visitantes não precisam, como Comentários se estiver habilitado, e clique em Concluído.

limitar fontes para acelerar a busca do WordPress

Em seguida, clique em Adicionar/Remover Atributos em uma fonte para escolher quais campos serão indexados. Quando terminar, clique em Concluído para manter suas alterações.

Depois disso, clique em Salvar, depois clique em Reconstruir Índice e confirme o prompt para que o SearchWP reconstrua o índice com suas novas configurações.

Salvar e reconstruir índice

Para um guia completo, veja nosso guia sobre limitar a busca a tipos de postagem específicos.

4. Adicione um Cache de Objetos Persistente

Um cache de objeto armazena os resultados de consultas do banco de dados na memória, para que o WordPress possa reutilizá-los em vez de consultar o banco de dados novamente.

O WordPress já armazena em cache os resultados de suas próprias consultas de postagem, incluindo buscas. Sem um cache de objeto persistente, no entanto, esse cache é descartado assim que a página termina de carregar.

Um cache persistente como Redis ou Memcached mantém esses resultados entre as visitas, para que uma busca repetida no WordPress padrão possa pular o banco de dados. Muitos hosts oferecem um deles, então vale a pena perguntar ao seu.

O WordPress redefine os resultados de consulta em cache sempre que uma postagem é adicionada ou atualizada, portanto, os maiores ganhos aparecem em sites onde o conteúdo não muda com frequência.

Se o SearchWP executa sua pesquisa, a consulta ao índice ainda é executada a cada vez. O cache de objetos ainda pode acelerar as outras consultas na página.

5. Evite que a Indexação Compita com os Visitantes

Um índice de pesquisa precisa ser criado e mantido atualizado, e esse trabalho é executado no mesmo servidor que seus visitantes usam.

O SearchWP indexa em segundo plano, em passagens que param após 60 segundos e depois continuam de onde pararam. Em hospedagem compartilhada, você pode tornar cada uma dessas passagens mais leve.

Para fazer isso, vá para SearchWP » Configurações e clique na guia Misc. Em seguida, ative Reduce Indexer Load, que processa menos dados por passagem de índice.

configuração de reduzir carga do indexador no SearchWP

A indexação leva mais tempo com esta opção ativada, mas coloca menos pressão em seu servidor enquanto os visitantes navegam.

Enquanto estiver nessa guia, deixe Re-parse Document Content desativado. Manter o texto de PDF e documentos já extraído no lugar acelera as reconstruções do índice.

Você também vai querer deixar Remove Minimum Word Length desativado. Quando ativado, o SearchWP também indexa palavras com menos de 3 caracteres, o que torna o índice maior.

Na guia General, Partial Matches procura apenas por palavras parciais quando uma palavra de pesquisa não tem uma correspondência exata no índice. Portanto, deixá-la ativada adiciona pouco trabalho às pesquisas onde todas as palavras já correspondem.

Habilitar correspondências parciais e correspondência mais próxima

Você pode ler sobre cada opção nessas guias na documentação de configurações do SearchWP.

Se o seu site tem uma grande biblioteca de PDFs, o processamento de documentos pode ser a parte mais pesada da indexação. A extensão SearchWP Xpdf Integration substitui a ferramenta Xpdf pdftotext, que é mais rápida e precisa do que o analisador de PDF integrado do SearchWP em arquivos difíceis de analisar, desde que seu host possa executá-la.

Nossa documentação do Xpdf Integration explica a configuração. Para hosts onde a análise local de PDF tem dificuldades, a extensão Offsite PDF Parsing (Pro e superior) envia a extração de texto para um servidor remoto em vez disso.

A pesquisa ao vivo não tornará a consulta ao banco de dados mais curta, mas muda a velocidade com que a pesquisa é percebida.

A extensão SearchWP Live Ajax Search mostra os resultados em um menu suspenso enquanto os visitantes digitam, para que eles vejam as correspondências antes mesmo de pressionar Enter.

Como Adicionar Pesquisa ao Vivo ao WordPress Gratuitamente: Como a pesquisa ao vivo fica finalmente

Por padrão, ele também espera até que um visitante pause a digitação por 300 milissegundos e tenha inserido pelo menos 3 caracteres. Isso evita que seu servidor execute uma nova pesquisa a cada pressionamento de tecla.

O SearchWP Live Ajax Search está incluído em todos os planos do SearchWP. Nosso guia sobre como adicionar pesquisa de autocompletar ao vivo cobre a configuração e lista todas as opções.

7. Atualize o PHP e Seu Banco de Dados, Depois Considere a Hospedagem

Versões desatualizadas do PHP e do banco de dados podem desacelerar todo o seu site, incluindo a pesquisa.

O WordPress recomenda PHP 8.3 ou superior e MySQL 8.0 ou MariaDB 10.11 ou superior. Seu host pode informar quais versões seu site executa, e muitos permitem que você alterne as versões do PHP no painel de hospedagem.

A atualização do seu plano de hospedagem vem por último. Se o Query Monitor ainda mostrar consultas lentas após as correções acima, seu servidor pode não ter recursos suficientes para o seu tráfego.

Perguntas Frequentes

1. Por que a busca do meu WordPress é tão lenta?

A busca do WordPress geralmente é lenta porque lê todo o seu conteúdo a cada pesquisa. A busca padrão compara cada palavra da pesquisa com o título, o resumo e o conteúdo das suas postagens, fazendo mais trabalho à medida que seu site cresce.

Um índice de busca corrige isso realizando esse trabalho com antecedência.

2. Um plugin de cache acelera a busca do WordPress?

Um plugin de cache ajuda menos do que você imagina, pois cada busca cria uma URL diferente. O WP Rocket, por exemplo, não armazena em cache os resultados de busca por padrão.

Um cache de objetos persistente, como o Redis, pode ajudar em buscas padrão repetidas no WordPress, embora o WordPress redefina esses resultados em cache sempre que uma postagem é alterada.

3. Preciso de Elasticsearch ou Algolia para uma busca rápida no WordPress?

A maioria dos sites WordPress não precisa de um serviço de busca externo. Um plugin de busca com seu próprio índice, como o SearchWP, acelera a busca dentro do seu próprio banco de dados sem chaves de API ou preços baseados no uso.

Serviços hospedados fazem mais sentido para catálogos muito grandes com um desenvolvedor para mantê-los.

4. Um plugin de busca vai deixar meu site WordPress lento?

O SearchWP constrói seu índice em segundo plano, em passes curtos, para que os visitantes possam continuar navegando enquanto ele funciona. Em hospedagem compartilhada, você pode ir em SearchWP » Configurações, clicar na aba Misc e ativar Reduzir Carga do Indexador para tornar cada passe mais leve.

5. Limpar meu banco de dados torna a busca do WordPress mais rápida?

Limpar seu banco de dados ajuda na velocidade geral do site, mas faz pouco pela busca. A consulta de busca do WordPress lê a tabela de posts, não os transientes ou comentários que as ferramentas de limpeza geralmente removem.

Substituir a varredura de busca por um índice faz uma diferença muito maior.

Dê aos Seus Visitantes Resultados de Busca Mais Rápidos

Uma busca lenta no WordPress geralmente se resume à consulta, então as correções que mais ajudam são aquelas que mudam a forma como a busca encontra seus resultados.

Esperamos que este artigo tenha ajudado você a aprender como acelerar a busca do WordPress. Você também pode querer ver nossos guias sobre maneiras de melhorar a busca do WordPress e corrigir problemas de indexação de busca do WordPress.

Pronto para parar de fazer os visitantes esperarem por resultados? Você pode começar com o SearchWP aqui. Todos os planos vêm com uma garantia de devolução do dinheiro em 14 dias.

Crie uma Experiência de Pesquisa WordPress Melhor Hoje

Nunca mais perca visitantes para resultados de pesquisa inúteis. O SearchWP torna a criação de sua própria pesquisa inteligente do WordPress rápida e fácil.

Adquira o SearchWP Agora
Ícone de Múltiplos Mecanismos de Busca