【问题标题】:CodeIgniter: how to translate the URL in the selected languageCodeIgniter:如何翻译所选语言的 URL
【发布时间】:2015-04-28 14:04:47
【问题描述】:

我正在使用 CodeIgniter 开发一个项目。我正在使用特定的语言类来显示不同语言的内容。现在我需要将 URL 翻译成所选语言。

例如:www.domain.com/book/categorywww.domain.com/buch/kategorie

我该怎么做?

【问题讨论】:

  • 我认为您需要为 URL 编写 .htaccess 规则。
  • 嗨,没有别的办法了吗?
  • 我不确定...但我尝试了仅使用 .htacess 的相同场景。
  • 因为我很少用.htaccess 不知道怎么改url。

标签: php codeigniter


【解决方案1】:
  1. 我认为,您可以使用 route fo 这个,如:

    路线['buch/kategorie'] = '书/类别';

  2. 问题的第二个方面 - 生成不同语言的链接以供查看。你应该为此编写一些代码

【讨论】:

    【解决方案2】:

    您必须创建显示相同视图的不同控制器 (that should be translated themselves) 然后链接将调用相关控制器语言。

    只有当您决定将您的网址设置为 host/lang/something 时,这才有效

    如果您的控制器被命名为 ende,则像 www.domain.com/en/book/categorywww.domain.com/de/buch/kategorie 一样

    控制器和函数的名称应该保存在语言文件中

    如果还没有这样做,您可以在 stackoverflow 上搜索有关从 cookie 或会话设置语言的方法

    如果你有更好的建议欢迎分享

    【讨论】:

    • 嗨 Omar,我按照建议创建了两种语言,并将两个名为 home_lang 的文件放在语言文件夹中,如下所示:language/en/home_lang 和 language/de/home_lang。翻译工作正常。根据您的建议,我必须创建两个控制器 en 和 de 并将它们放在语言文件夹中。现在我有点困惑:-(
    • 您可以将两个控制器的功能存储在model 或创建module 以利用代码点火器的HMVC 方面。这样您就可以将结果传递给控制器​​(两者)中的$data 数组
    • Code igniter 对我来说是最好的,但我总是面临这种问题所以这是一种解决方案,如果你想要另一种,我有一堆 em
    猜你喜欢
    • 2014-02-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-20
    • 2020-05-06
    • 1970-01-01
    • 2012-02-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多