Removendo Resultados de Pesquisa Indesejados do Algolia: Um Guia Prático
Ao utilizar o Algolia para a funcionalidade de busca no etechpt.com, deparei-me com uma situação inesperada durante a fase de testes com o Polylang, um plugin de tradução. Artigos traduzidos passaram a ser exibidos nos resultados da pesquisa, o que não era desejado.
Esta ocorrência gerou a necessidade de encontrar uma solução eficaz para excluir essas entradas da pesquisa no Algolia.
Ao analisar o painel do Algolia, constatei que as postagens traduzidas apresentavam taxonomias específicas, como “Francais”.
Entretanto, o painel não oferecia uma opção direta para excluir registros. O Algolia possui um painel minimalista e recomenda o uso da sua API para o gerenciamento dos registros.
Após algumas pesquisas, encontrei uma maneira de remover essas entradas. É possível realizar essa ação através do cURL ou de um cliente HTTP como o Postman.
Para prosseguir, você precisará dos seguintes dados:
- ID do aplicativo Algolia
- Chave de API de administrador
- Nome do índice
Essas informações podem ser encontradas em Configurações >> Chaves API no painel do Algolia.
Inicialmente, faremos uma consulta para confirmar que estamos obtendo os registros corretos e evitar a exclusão de dados indesejados.
curl -X POST \
-H "X-Algolia-API-Key: ADMIN_API_KEY" \
-H "X-Algolia-Application-Id: APPLICATION_ID" \
"https://APPLICATION_ID.algolia.net/1/indexes/INDEX_NAME/query" \
--data '{"query": "", "filters": "taxonomies.language: Français"}'
Lembre-se de substituir ADMIN_API_KEY
, APPLICATION_ID
e INDEX_NAME
pelas informações correspondentes.
Com a consulta acima, obtivemos os registros desejados. Agora, podemos prosseguir com a exclusão utilizando a seguinte consulta:
curl -X POST \
-H "X-Algolia-API-Key: ADMIN_API_KEY" \
-H "X-Algolia-Application-Id: APPLICATION_ID" \
"https://APPLICATION_ID.algolia.net/1/indexes/INDEX_NAME/deleteByQuery" \
--data '{"query": "", "filters": "taxonomies.language: Français"}'
Caso prefira utilizar o Postman, insira os seguintes cabeçalhos:
- X-Algolia-Application-Id
- X-Algolia-API-Key
E aqui está o resultado da operação, indicando sucesso na exclusão:
Meu objetivo era excluir taxonomias específicas, mas a API do Algolia oferece a flexibilidade de gerenciar praticamente qualquer aspecto do seu índice. Para explorar outras possibilidades, consulte a documentação oficial da API de exclusão de registros.