0

リンクを生成しています (これは、言語が「fre」に設定されている場合です):

$html->link('About', array('controller' => 'pages', 'action' => 'about', 'language'=> 'fre')) ;

上記のように、言語 [eng|fre] のサブディレクトリもあります。これは、次のいずれかの言語にすることができます。

私は次のようにルーティングしています:

Router::connect('/:language/:controller/:action/*',
                   array(),
                   array('language' => 'eng|fre'));

// this worked before the language subdomain
Router::connect('/about',array('controller'=>'pages','action'=>'about'));

私が抱えている問題は、URLを次のようにしたいということです:

/eng/about
/fre/about

しかし、明らかに彼らは次のように出てきています:

/eng/pages/about
/fre/pages/about
4

2 に答える 2

1

仮説的にはこれでうまくいくと思います

Router::connect('/:language/about',array(
    'controller'=>'pages',
    'action'=>'about',
    'language' => 'eng|fre'
));

編集:20ページすべてがページの場合、次のようなものを試すことができます

Router::connect('/:language/:action',array(
    'controller'=>'pages',
    'action' => 'about|contact|something|else',
    'language' => 'eng|fre'
));
于 2013-05-24T12:55:12.363 に答える
0

これにより、任意のページに任意の 3 文字の言語コードを使用できます。

Router::connect(
    '/:language/:controller/:action/*',
    array(),
    array('language'=>'[a-z]{3}')
);
于 2013-05-24T13:33:00.113 に答える