【发布时间】:2016-04-12 22:09:24
【问题描述】:
对不起我的英语。
我想为我的网站添加多语言标签。一切都好。在下面我添加图片请看这个。但是我的方法不好。
第一个问题是例如“php”标签在每种语言中都是相同的。如果标签是“学生”,这对于其他语言是不同的。例如在土耳其语中的“öğrenci”。因此,如果我想计算帖子中的 php 标签,我必须使用额外的 sql 查询。
第二个问题在下面,我有 3 个数据库表。在管理标签字段中,如果每个字段中的标签数量不同,我会添加错误,因为在标签语言表中,每个帖子的每种语言都有相同的 tag_id。如果我将 3 个标签添加到一种语言,但将 2 个标签添加到其他语言,那么最后一列将变为空。
第三个问题是如果我将语言 url 切换为土耳其语“tr/articles/tag/student”之类的网站中的 url,这是一个问题,因为在土耳其语中没有像学生这样的标签。但是 2 个标签具有相同的 tag_id。因此,如果我将网址“en/articles/tag/student”更改为“tr/articles/tag/ogrenci”,这也是问题,因为在其他帖子中,学生标签可能具有不同于“ogrenci”的土耳其语翻译。所以我必须使用限制 1。
db 表标签有 -> tag_id
db table taglangs 有 -> id,tag_id,language,name
db table tagassign has -> class(意思是Post model class), post_id, tag_id
也许还有其他问题。但我认为在多语言网站中添加标签与我的方法不同。
【问题讨论】:
-
也许可以做到只有一组标签可以用不同的语言显示,而不是每种语言都有一组不同的标签。
-
这个怎么样。英语的新闻标签,俄语的novosti,土耳其语的haberler。这是其他语言的新闻翻译。我怎样才能在一组 o 标签中做到这一点?
-
有一个表,其中包含带有每种语言翻译的标签,然后将该表中的行与您要标记的任何内容相关联。
-
而且也许在某些帖子中相同的标签名称在其他帖子中有不同的翻译。因为一些英语单词在俄语中有多个翻译取决于帖子文本。
-
使用标签表仍然可以。选择标签时,您只需显示每个标签的所有翻译,以便选择正确的标签。
标签: php web tags multilingual