我正在生成一个链接(这是为了将语言设置为“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'));
我遇到的问题是,我希望网址是:
/eng/about
/fre/about
但显然他们的出现是:
/eng/pages/about
/fre/pages/about
答案 0 :(得分: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'
));
答案 1 :(得分:0)
这允许您对任何页面使用任何3字符语言代码:
Router::connect(
'/:language/:controller/:action/*',
array(),
array('language'=>'[a-z]{3}')
);