我在多语种网站(目前只有英语和土耳其语)进行搜索。
只要访问者使用正确的语言字符,就会搜索出相应的结果。
e.g。
我的问题是,对于土耳其语,如果我使用“modul”而不是“modül”,它就行不通。只是因为“ü”。
即使我使用英语而不是原创的相同字符,我有什么方法可以从数据库中获得结果吗?
表的结构是
CREATE TABLE IF NOT EXISTS post_lang (
id bigint(20) NOT NULL AUTO_INCREMENT,
post_id bigint(20) NOT NULL,
ln enum('en','tr') NOT NULL,
title text CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (id)
);
INSERT INTO post_lang (id, post_id, ln, title, content, doc) VALUES
(1, 1, 'en', 'How can I create a new module?'),
(2, 1, 'tr', 'Nasıl yeni bir modül yaratırım?');
答案 0 :(得分:4)
你可以创建一个字段normalizedText
,在那里你只会存储没有重音符号的字符。
因此,您可以使用不包含重音的字符串对normalizedText运行搜索,并且具有明显的结果。
您可以使用方便的php wordpress功能(remove_accents)将您的重音字符转换为非重音字符