2

我需要一个关于如何制作一个完整的多语言网站的想法。我遇到了很多方法,有些人使用 xml 文件来翻译模板位。如果我只想要主模板,这很有效。但即使是内容也会被翻译。

例如,我有一个新的英文条目,它应该被翻译成其他 4 种语言。大多数属性是通用的。

到目前为止,我通过为具有以下属性的主要网站模板创建一个表:lang、tag、value 在我的模板中,它将对 lang 和 tag 进行匹配。

翻译网站其余部分的最佳方法是什么(使用 mysql 的动态 php 页面)

4

2 回答 2

2

您需要如下语言表:

CREATE TABLE `language` (
 `langid` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
 `language` varchar(35) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
 PRIMARY KEY (`langid`)
) ENGINE=InnoDB

然后,例如,您有一个帖子表格,如下所示:

CREATE TABLE `post` (
 `postid` int unsigned NOT NULL AUTO_INCREMENT,
 `langid` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
 `content` TEXT CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
 `title` varchar(35) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
 PRIMARY KEY (`postid`)
) ENGINE=InnoDB

在 post 表中,您需要一个 key like langid,它指的是语言表中的特定语言。在您的仪表板中,您将拥有以下内容:
在此处输入图像描述 每个文本框都引用该特定语言。
您应该有另一个用于站点菜单的表,并将 langid 外键放在那里。你应该一切顺利。

于 2012-07-25T02:16:57.190 回答
2

查看 gettext 扩展 - http://php.net/manual/en/book.gettext.php

然后使用POEditsimplepo之类的程序对语言文件进行实际编辑

IMO,这是我为多语言网站找到的最佳方式

您还可以查看Zend_Translate模块

于 2012-07-25T02:28:25.997 回答