2011-12-14 102 views
1

流利,您如何推荐治疗多语言网站?治疗多语言网站的建议

进出口完成如下工作:

1 - 有变量的所有文字/ imgpath(郎/ es.php,朗/ en.php)。

2 - 保持文件分开考虑到相似之处。

/ 
css/ 
es/ 
en/ 
images/ 

3 - 用CMS(wordpres)

现在的问题是,并非总是与CMS工作作为前述。大多数情况下都是手工制作

我已经评论过使用XML,但最终我认为它与xml应该被转储到一个变量,保持会话(或任何形式)中的语言ID相同。

我认为必须是一个更好的方法来做到这一点。

举个例子,我把情况:

Screenshoot = http://i.stack.imgur.com/yOQM5.jpg 

希望你能帮助我:d。

THanks

回答

2

解决方案取决于需求。我已经为大型多语言网站实施了复杂的翻译工具,并为非常小的英语/西班牙语解决方案提供了非常基本的解决方案。

较大的是后端数据库驱动,但前端是静态的。我们根据用户的会话加载适当语言的文件。由于大量的查询是不可取的,我们写了翻译内容的HTML到纯文本文件,并要求他们像这样:

<?php 
if(file_exists($_SESSION['lang'].'/path-to-file.html')) 
{ 
    include($_SESSION['lang'].'/path-to-file.html'); 
} 
else 
{ 
    //call some helper to fetch it on the fly 
} 
?> 

然而,并非所有网站的需求,一个庞大的数据库驱动的语言工具。您可能有可以很容易地通过一个简单的配置文件来处理一个基本的网站:

$lang = [ 
    'en' => [ 
     'title' => 'the title in english', 
     'header_1' => 'header 1 in english' 
    ], 
    'sp' => [ 
     'title' => 'the title in spanish', 
     'header_1' => 'header 1 in spanish' 
    ] 
]; 

,你将包括有在每一页上这个变种的文件,然后调用需要的语言字符串:

<h1><?php echo $lang['en']['title']; ?></h1> 

如果您需要一个更适合您的例子,您应该修改您的问题以包含翻译的预期大小以及语言如何影响您网站的布局和设计。

0

您可能也有兴趣gettext

它照顾复数,它很容易使用。
某些语言可能非常难以使用数组或静态文件进行管理。

+0

`gettext`是整个站点确定为小段文字,但不是。 – ComFreek 2011-12-14 20:23:59