【问题标题】:cakePhp and multi languagescakePhp 和多语言
【发布时间】:2012-07-07 14:21:53
【问题描述】:

我正在 cakePhp 2.2 中创建一个网站。我对这个框架很陌生。我需要帮助,一步一步如何创建多语言页面。我在 Locale/eng/LC_MESSAGES.default.po 和 fre 中创建了翻译。下一步是什么?在哪里可以设置显示语言?我可以在哪里编写要为用户显示的语言?

感谢您的帮助!

【问题讨论】:

    标签: cakephp internationalization


    【解决方案1】:

    您必须: 创建文件和文件夹如下:

    /app/Locale/eng/LC_MESSAGES/default.po (English)
    /app/Locale/fre/LC_MESSAGES/default.po (French)
    

    在 default.po 文件中你需要创建对:

    msgid "Hello"
    msgstr "EN Translation"
    

    这样,每个 Hello 单词都将替换为 EN Translation。

    接下来你必须设置你的语言,即

    Configure::write('Config.language', 'fre');
    

    如果您想为页面设置语言,请将其粘贴到引导文件中,如果您想在浏览网页期间更改它,请粘贴:

    $this->Session->write('Config.language', 'fre');
    

    在控制器的 beforeFilter 函数中。

    【讨论】:

      【解决方案2】:

      有一个pretty good guide in the CakePHP Cookbook.

      要为当前用户设置语言,您可以将设置存储在 Session 对象,如下所示:

      $this->Session->write('Config.language', 'fre');
      

      在控制器的 beforeFilter 中的每个请求的开头 也应该配置 Configure:

      class AppController extends Controller {
          public function beforeFilter() {
              Configure::write('Config.language', $this->Session->read('Config.language'));
          }
      }
      

      【讨论】:

        【解决方案3】:

        cakePHP 2+ 中的逐步网站国际化或多语言

        只需按照以下步骤操作:

        Step 1. Cakephp 如何捕捉需要多语言的字符串?

        第2步:为不同语言的插入字符串创建pot文件。

        第 3 步:在 app/Config/routes.php 中添加以下代码

        第四步:在 app/Config/core.php 中设置默认语言

        第六步:在 app/Controller/AppController.php 中添加 helper 和 Cookie 组件

        第七步:在app/Controller/AppController.php中添加方法

        第 7 步:调用 _setLanguage();在 app/Controller/AppController.php 中的 beforeFilter() 下

        第 8 步:添加语言的链接:

        链接将是 http://saidul.songzog.com/blog/details/874/step-by-step-website-internationalization-or-multi-language-in-cakephp-2

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-04-29
          • 2013-07-10
          • 2013-12-19
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多