带有语言子目录的cakephp路由
我正在生成一个链接(当语言设置为“fre”时适用): 我还有一个语言的子目录[eng | fre],如上所示,它可以是任何一种语言: 我是这样说的:带有语言子目录的cakephp路由,cakephp,cakephp-1.3,Cakephp,Cakephp 1.3,我正在生成一个链接(当语言设置为“fre”时适用): 我还有一个语言的子目录[eng | fre],如上所示,它可以是任何一种语言: 我是这样说的: Router::connect('/:language/:controller/:action/*', array(), array('language' => 'eng|fre')); // this worked before the language subd
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
我认为假设这应该行得通
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'
));
这允许您对任何页面使用任何3个字符的语言代码:
Router::connect(
'/:language/:controller/:action/*',
array(),
array('language'=>'[a-z]{3}')
);
是的,谢谢,我试过了,但这是一个订购问题,恼人的是我至少有20个URL需要这样做:|
Router::connect(
'/:language/:controller/:action/*',
array(),
array('language'=>'[a-z]{3}')
);