我们已经用英语完成了网站内容,现在我们想为网站添加多语言选项。英文内容较多,所有内容都需要转换成新的语言。
我可以创建这样的表
content_id
en_title
ar_title
fr_title
....
但是更多的现有内容是英文的。任何指导将不胜感激。
我们已经用英语完成了网站内容,现在我们想为网站添加多语言选项。英文内容较多,所有内容都需要转换成新的语言。
我可以创建这样的表
content_id
en_title
ar_title
fr_title
....
但是更多的现有内容是英文的。任何指导将不胜感激。
您可以将页面分为 2 个表格
page
- id
- other info that is generic
part
- id
- part_id
- page_id
- language
- content
现在你可以说用语言 y 获取页面 x 的内容。您也可以“轻松”(需要翻译很多:P)添加新语言,只需将它们放入零件表中
我将 part_id 添加到 part。这样你就可以从页面 x 部分 id y 用语言 q 说出我想要的东西。
i18n 的大多数基本实现都可以通过语言文件完成。它涉及3个主要步骤
第 1 步:定义语言文件
对于您的示例,定义 3 个文件 en.php、fr.php 和 ar.php(或更多语言的更多文件)。最好将所有这些文件保存在“语言”文件夹中。文件内容会像
<?PHP
$LANG_LABEL_TITLE = "Title in specific language";
第 2 步:包含语言文件
您的所有 Web 可访问文件都必须有一个通用脚本;中央控制器或至少一个公共标头。在该文件中,检测默认浏览器语言并将其设置在会话中。再次在此处包含所需的语言文件。
第 3 步:使用标签
包含所需的语言文件后,只需在所需位置使用标签,例如
<title><?PHP echo $LANG_LABEL_TITLE; ?></title>
这又是最基本的实现。仔细阅读它,如果您卡在某个地方,请提出特定于该部分的问题。