Thread Starter
buga9
(@buga9)
vou perguntar ao papa xico, pode ser que ele saiba… :/
@buga9
O forum é mantido graças ao tempo dedicado por uma reduzida equipa de voluntários. Peço que sejas paciente.
Thread Starter
buga9
(@buga9)
bem, fiz a primeira pergunta há 2 semanas, ninguém respondeu. fiz um comentário há 3 horas e já obtive resposta, baril. estou quase a saber o que preciso 🙂
agora a sério, é um assunto tão complexo que demore tanto tempo a obter uma resposta?!
Vamos então por partes:
1- Qual o site em causa?
2- Tens acesso à base de dados?
3- Sabes qual o collation da tua base de dados?
Thread Starter
buga9
(@buga9)
1- plurivet.pt
2- sim
3- utf8mb4_unicode_ci
Por norma o collation define como poderão funcionar as comparações de strings:
– “bin” mais exatas: SELECT “b” = “B” => FALSE
– “ci” não são case sensitive: SELECT “b” = “B” => TRUE
– “general” menos rígidas: SELECT “a” = “à” => TRUE
Pensei que estivesse em general, mas dizes que não, certo?
Thread Starter
buga9
(@buga9)
certo, está em “unicode”.
A situação referida não depende do WordPress mas sim da Collation da base dados (MySQL).
Diferentes definições da colaltion podem produzir resultados diferentes (mais rigorosos ou menos).
Não é recomendável que se altere a collation da BD, mas sim que seja alterado o código das pesquisas, ou então procurar essa funcionalidade num plugin de confiança.
Thread Starter
buga9
(@buga9)
e como altero o código das pesquisas? onde altero esse código? em que ficheiro?
Podes definir o charset e o collation no /wp-includes/wp-db.php
De qualquer forma, para dicas de programação poderás usar o canal #dev no Slack da Comunidade Portuguesa de WordPress
Podes ver aqui como te podes juntar ao nosso Slack:
http://wp-portugal.com/2015/01/23/wp-portugal-ja-tem-team-no-slack/
Thread Starter
buga9
(@buga9)
ok, obrigado pela ajuda. vou ver se consigo descobrir como fazer isso.
Fiquei curioso… Como se resolve este problema?
@buga9, o que foi feito para resolver?
Obrigado.
Thread Starter
buga9
(@buga9)
amigo vitor,
também gostava de saber, pois até agora ainda não tive nenhuma resposta satisfatória 🙁
Acho que finalmente estou a conseguir encontrar algumas pistas que poderão indicar um caminho a seguir para resolver o teu problema.
Ora tenta começar por aqui:
https://wordpress.stackexchange.com/questions/176023/wordpress-search-return-wrong-results
E encontrei um plugin que poderá (ou não ?) ser alternativa para a solução do teu problema. Dá uma vista de olhos neste “Search Everything:
https://pt.wordpress.org/plugins/search-everything/
Declaração de interesses: Não tenho qualquer tipo de afiliação / ligação aos sites externos à plataforma wordpress.org que indiquei. Sempre que possível, tento indicar soluções e/ou respostas que não incorram em custos para os utilizadores. Neste caso, presumo que não existem quaisquer tipos de custos associados. Obrigado.
O plugin Search Everything não ultrapassa a questão da collation da base de dados, apenas amplia o contexto das pesquisas, por exemplo a legenda das imagens, ou novas taxomonias, ou então facilita a exclusão de determinados conteúdos da pesquisa.
Até ao momento, várias sugestões foram apresentadas:
– mudança da collation da BD para a necessária: https://codex.wordpress.org/Converting_Database_Character_Sets
– criação de um novo formulário de pesquisa (custom)
– utilização de Elastic Search
Infelizmente nenhuma imediata e fácil de implementar.
-
Esta resposta foi modificada há 7 anos, 10 meses por
pmfonseca.