让网站全球化

让网站全球化可以吸引更多的用户和访问,全球化最重要的就是让各地的人都看得懂你的网站上写了些啥。在我玩联机OSU的时候甚至很多外国人让我们不要说日语。。。。[这是傲娇卖萌?]
那么接下来进入正题,刚刚中午趴在床上很无奈的想到了这个问题。[为啥无奈呢?因为又不想起床,不起床又没有wifi信号。。。。],实际上也是我为iTi想的问题,有可能我已经想的太远了,但是有些想法还是很好的。

特别加注
很多围观者还没仔细看完就私下告诉我直译不通什么的。。。
这种方法只是用于翻译小区块的文字的,比如“登录”,“取消”之类的,不是用来翻译大片文章的,大篇文章的翻译工作为了用户体验必须单独成库或者成表。
 

首先说一下简单逻辑:
>定义翻译表
>传入原文
>检测翻译表
>返回对应值
 
大体就是这样了。
  
然后就开始进行具体操作
 
1.定义一个翻译表
翻译表本身意向是放在memcache里作为数组调用的,但是暂时只做个演示不想那么麻烦,所以写进了一个叫langs.php的文件里。
里面的内容如下

用像这样的形式保存翻译内容,存放在memcache里时格式一样。上面分别用不同的数组保存了不同语言的翻译,当然下面的英文和日文就懒得写了,现在只表示一下中文,而且我的系统语言是中文也只有中文可以看到效果。
  
2.做好翻译函数
明确了翻译表格式以后就可以用翻译函数来使用他们了。
下面都是”translate.php”文件里的内容

 
首先定义一个最主要的函数,他用来加载语言表
 

 
然后就开始做主角了,它用来翻译[对照]传入的字符串

 
上面的函数作用只是翻译字符串,如果方便地使用它,再做一个名字简短的函数来输出翻译结果
 

 
 
最后做一个翻译初始化函数,虽然现在里面只有一个函数觉得没什么必要,但是实际使用的时候可能还会有点其它的要求,比如决定到底是否要翻译

 
 
到这里翻译函数就差不多了,整个翻译过程是这样:
>最开始时初始化翻译表
>语言存在就载入翻译表,不存在赋空值
>调用翻译函数
>翻译表是空值就直接返回原文
>不是空值就翻译
>输出
  
3.测试
 
现在在主文件里写入以下内容

  
最后在浏览器里会出来这样的结果[亲测]

 
这和wordpress的Twenty系列模版不同的地方在于WP的模版只指定一个语言并从一个语言文件里提取翻译,不会随用户改变。我写的是根据用户浏览器语言来返回对应语言的翻译方法。[虽然本质差不多。。]
 
有什么漏洞的话请告诉我,这可能关系到iTi的生死。





如文中无特殊说明,本站均使用以下协议:知识共享许可协议
知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。

本博客使用Disqus评论系统,如果看不到评论框,请尝试爬墙。