我正在使用 ZendFramework 构建多语言站点。
关于 URL,我希望它像:
http://example.com/lang/module/controller/action
是的,我在 bootstrap.php 的 _initRoute() 处创建了新路由器:
public function _initRoutes() {
$this->bootstrap('FrontController');
$this->_frontController = $this->getResource('FrontController');
$router = $this->_frontController->getRouter();
$langRouter = new Zend_Controller_Router_Route(':lang/', array(
'lang' => 'en'
));
$defaultRouter = new Zend_Controller_Router_Route(':module/:controller/:action', array(
'module' => 'default',
'controller' => 'index',
'action' => 'index'
));
$defaultRouter = $langRouter->chain($defaultRouter);
$router->addRoute('langRoute', $langRouter);
$router->addRoute('defaultRoute', $defaultRouter);
}
真的行。
但它并不完整,我有两个问题:
如果 URL 是,如何设置默认语言 ex
http://example.com/module/controller/action
_initRoutes() 仅将“模块”视为语言
如何生成语言 URL?
就像是:
$this->url(array('controller' => '', 'module' => '', 'action' => '', 'lang' => ''))
你能帮我解决问题吗??
提前致谢。