如何处理动态站点本地化?

Jam*_*son 6 php mysql translation localization transactions

我有一个目前全都用英文的网站.它是一个在线游戏,所以它有一堆不同的页面,包含静态文本,以及数据库中的大量内容.

我正在努力扩大全球范围,并准备发布该网站的一些本地化.但是,我不确定如何设置它的最佳方式,这对我来说是最容易管理的,也是最容易使用的用户.

我应该将翻译后的文本存储在数据库中,还是应该以完全不同的方式完成?如果它很重要,该站点是用PHP编写的并使用MySQL.

Luc*_*ofi 1

根据我的经验,手动完成所有翻译可能是一场真正的噩梦!%-)

我认为您必须将翻译重点放在仪表板命令站点上,例如导航菜单和所有其他用户配置文件设置以及站点周围的按钮等等!

通过将其包含到您的页面文件中来完成此操作,如下所示:

  include "./includes/languages/english.php";
Run Code Online (Sandbox Code Playgroud)

在一个名为 ex. 的文件中:english.php像这样放置 ex

define('LAN_USER_LOGIN' , 'User Logged In');
define('LAN_USER_LOGOUT' , 'User Logged Out');
.....
Run Code Online (Sandbox Code Playgroud)

等等 italian.php、spanish.php、french.php 等...并且在每个文件中都有相同的定义变量,但已翻译!

那么您可以让用户从国家列表中进行选择!顺便说一句,有很多方法可以做到这一点!

一种方法是使用会话

// if the user haven't selected a language before!!
if (empty($_SESSION['language'])) {
 $_SESSION['language'] = "EN";
} else {
$_SESSION['language'] = YOUR_LANG ;
}
Run Code Online (Sandbox Code Playgroud)

对于所有其他内容,我建议使用类似的工具

http://code.google.com/intl/it-IT/apis/ajaxlanguage/


注意:我建议您不要使用自动识别系统,因为它可能会导致非常烦人的体验,特别是如果您正在从另一个国家/地区观看该网站!或者只是你想从中选择,简单地让用户最终选择!;-)

使用自动识别功能来自动完成注册!;-)

希望这有帮助!