zoukankan      html  css  js  c++  java
  • [MODx] 10. Using Babel for Muti-languages support

    1. Go to 'Extras' -> download and install 'Babel'.

    2. Set up '.htaccess' file, currently, we set up three languages:

    find '# The Friendly URLs part' in your .htaccess / ht.access file, replace the existing code with:

    # The Friendly URLs part
    # redirect all requests to /de/favicon.ico and /nl/favicon.ico
    # to /favicon.ico
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(en|nl|de)/favicon.ico$ favicon.ico [L,QSA]
                              
    # redirect all requests to /de/assets* and /nl/assets* to /assets*
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(en|nl|de)/assets(.*)$ assets$2 [L,QSA]
                             
    # redirect all other requests to /de/* and /nl/*
    # to index.php and set the cultureKey parameter
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(en|nl|de)?/?(.*)$ index.php?cultureKey=$1&q=$2 [L,QSA]

    Basicly, it just redirect to favicon, assets folder & index.php to root directory.

    Then if you have ht.access, you need to delete it and replace with .htaccess.

    3. Go to system setting, set 'Use Friendly URL' to 'YES':

    4. Create a new plugin call 'gateway':

    <?php
            if($modx->context->get('key') != "mgr"){
                /* grab the current langauge from the cultureKey request var */
                switch ($_REQUEST['cultureKey']) {
                    case 'nl':
                        /* switch the context */
                        $modx->switchContext('Nederlands');
                        break;
                    case 'de':
                        /* switch the context */
                        $modx->switchContext('Deutsch');
                        break;
                    default:
                        /* Set the default context here */
                        $modx->switchContext('web');
                        break;
                }
                /* unset GET var to avoid
                 * appending cultureKey=xy to URLs by other components */
                unset($_GET['cultureKey']);
            }

    5. Then click 'System Events' tab, scroll down to 'OnHandleRequest', select the checkbox.

    6. Go to system -> 'Contexts', add two contexts 'Deutsch' & 'Nedelands':

    7. In Context, right click 'Web', select 'update context', then clicik 'context settings' tab:

    8. Add setting to it:

    7. In 'Access Control List', right click the '(anonymouse)', select 'Update user group':

    8. Reinstall the Babel to add de & nl into the language.

  • 相关阅读:
    神经网络学习之----单层感知器
    神经网络学习之----神经网络发展史
    神经网络学习之----神经网络概述
    C语言几种常见的字符串输入
    基于单链表实现集合的交集、并集、差集的运算
    关于单链表的一些基本操作
    输入20个整数存放到一个单向链表中,并顺序逆序输出
    《你的灯亮着吗》阅读笔记
    场景调研
    站立会议总结09
  • 原文地址:https://www.cnblogs.com/Answer1215/p/4227432.html
Copyright © 2011-2022 走看看