最有效的模板多语言网站的方式

chr*_*ris 4 php multilingual templates

我正在建立一个英语/法语网站,并想知道是否有这样一份工作的最佳实践.

  1. 复制网站并使用适当的网站制作法语和英语文件夹.

  2. 使用PHP将内容与html标签交换.例如.如果($ LANG == '恩'):

  3. 使用php只交换保留html标签的内容两者相同.例如.如果声明到处都是.这对效率有害吗?

任何其他建议将不胜感激

Mat*_*hew 5

我们有一个框架,用于何时(如果)我们的网站走向国际,就像这样......

文件夹结构;

/
  lang/
    english/
      images/
      text/
    dutch/
      images/
      text/
Run Code Online (Sandbox Code Playgroud)

任何特定于语言的文本或图像都将直接从页面中删除,并替换为常量.例如,在登录屏幕上,我们会进入;

echo TEXT_LOGIN_WELCOME;
Run Code Online (Sandbox Code Playgroud)

在/lang/english/text/login.php中定义;

define('TEXT_LOGIN_WELCOME', 'Welcome, please login:');
Run Code Online (Sandbox Code Playgroud)

但在/lang/dutch/text/login.php中,它被定义为;

define('TEXT_LOGIN_WELCOME', 'Welcome, please login (in dutch):'); 
Run Code Online (Sandbox Code Playgroud)

;-)

每个语言定义文件的名称与其用于的页面完全相同,因此当我们加载面向公众的页面时,我们只需要确定用户说的语言,我们就可以包含相关的语言定义文件.

这个系统的好处是所有语言信息都是集中的.当你需要添加一种新语言时,只需复制main(英语?)文件夹,重命名,压缩整个文件并将其发送到翻译服务以实现他们的魔力.当然,这个系统的缺点是维护,因为语言和内容都在增长......如果有人对此有任何好主意,那么我很乐意听到它们!

顺便说一句,如果您最终需要通过IP猜测用户的位置,您可能需要查看geoIP.