Codeigniter 网站多语言 CMS 实施的最佳方式

Posted

技术标签:

【中文标题】Codeigniter 网站多语言 CMS 实施的最佳方式【英文标题】:the best way to codeigniter website multi-language CMS implement 【发布时间】:2016-11-25 22:27:59 【问题描述】:

我正在研究几个小时,但我找不到任何明确、有效的方法:/

我有一个英文的 codeigniter 基础网站,我现在必须添加西班牙文和葡萄牙文。根据访问者的选择,将我的网站制作成 3 种语言的最佳方式是什么?

所有菜单和页脚以及内容也会在语言更改时翻译,因此哪种方式最适合我。

【问题讨论】:

来自用户指南codeigniter.com/user_guide/libraries/… 【参考方案1】:

在codeigniter中很容易实现多语言网站。

为此,您只需在应用程序下创建 Language 文件夹并为每种语言制作必要的文件。

如需进一步参考,您可以访问以下网站:

multi-language-implementation-in-codeigniter

【讨论】:

内容也不仅菜单、页脚发生变化 你的想法是对的,但是当内容改变时,问题就产生了【参考方案2】:

有一个可用的库语言文件通常存储在您的系统/语言目录中

来自文档:

语言类提供检索语言文件和 用于国际化的文本行。

在您的 CodeIgniter 系统文件夹中,您会找到一种名为 language 包含语言文件集。您可以创建自己的语言 文件,以便在其他文件中显示错误和其他消息 语言。

语言文件通常存储在您的系统/语言目录中。 或者,您可以在您的内部创建一个名为 language 的文件夹 应用程序文件夹并将它们存储在那里。 CodeIgniter 将首先查看 在您的应用程序/语言目录中。如果目录没有 存在或指定的语言不在那里 CI 将代替 查看您的全局系统/语言文件夹。

需要在里面创建一个lang1.php和lang2.php application/language/lang 然后在该文件中创建您的密钥 像 $lang['abc'] = "def";然后将其加载到您的控制器中 $this->lang->load('lang1', 'polish');然后像这样取线 $this->lang->line('abc');

我没试过,但如果不工作肯定会工作,然后告诉我。

编辑:

在两个变量的数据中存储西班牙的数据都存储在系统/语言目录中,

$lang1['spainsh'] = "content of spanish"
$lang2['portuguese'] = "content of portuguese " 

然后在您的控制器中调用这些内容,然后在您的视图中使用它。 没有其他可用选项。因为 CI 的库不会改变你的语言,所以你必须为它添加不同语言的内容,这是唯一的解决方案。

【讨论】:

但是 usme 博客系统应用 karni hey Ok ?? 现在当用户可以阅读特定的博客文章时,他会更改语言,因此该博客文章的内容也只会更改 manu 和 footer 很容易更改,但如何更改特定的博客内容?? @HothiJimit 这些 cmets 需要是英文的 对不起@wolfgang1983 兄弟

以上是关于Codeigniter 网站多语言 CMS 实施的最佳方式的主要内容,如果未能解决你的问题,请参考以下文章

纸壳CMS可视化建站系统搭建多语言网站

Codeigniter:如何使用数据库和用户会话数据构建多语言网站?

在codeigniter中制作多站点和多语言网站的正确方法

如何处理 Codeigniter 上的多语言 uri 重定向?

PHP Codeigniter 多语言站点使用会话变量来存储语言密钥

CodeIgniter 表单验证多语言标签