所以我在我的应用程序中有一个Zend_Route:
public function _initRoutes() {
$front = Zend_Controller_Front::getInstance();
$router = $front->getRouter();
$route = new Zend_Controller_Router_Route(':language/:controller/:action/*',
array(
'language' => 'de',
'controller'=> 'index',
'action' => 'index'
),
array(
'language' => '[a-z]{2}'
));
$router->addRoute('lang_route', $route);
}
和我的xml
<?xml version="1.0" encoding="UTF-8" ?>
<configdate>
<nav>
<home>
<label>Home</label>
<controller>index</controller>
<action>index</action>
<pages>
<my_account>
<label>Galery</label>
<controller>index</controller>
<action>list</action>
</my_account>
</pages>
</home>
<login>
<label>Login</label>
<controller>login</controller>
<action>index</action>
</login>
</nav>
</configdate>
我的问题是,Zend_Navigation创建了错误的网址。 所以当我输入网址时 http://localhost/zf/public/en Zend_Navigation生成的网址仍然如此 http://localhost/zf/public/de/index/
希望任何人都有一些想法:)
答案 0 :(得分:1)
您必须添加要用于在Xml配置中创建正确URL的路由:
<?xml version="1.0" encoding="UTF-8" ?>
<configdate>
<nav>
<home>
<label>Home</label>
<controller>index</controller>
<action>index</action>
<route>lang_route</route>
</home>
</nav>
</configdate>
在Xml配置中,您可以使用为Zend_Navigation_Page_Mvc指定的相同关键字。