我正在我的网站上设置zend导航,我在本地开发时遇到了问题。
我的navigation.xml
<?xml version="1.0" encoding="UTF-8"?>
<config>
<nav>
<page1>
<label>Site</label>
<uri>/</uri>
<pages>
<page1_1>
<label>Home</label>
<uri>/</uri>
</page1_1>
<page1_2>
<label>Contact</label>
<uri>/contact</uri>
</page1_2>
</pages>
</page1>
</nav>
</config>
渲染菜单
<?=$this->navigation()->menu();?>
HTML输出
<ul class="navigation">
<li class="active">
<a href="/">Site</a>
<ul>
<li>
<a href="/">Home</a>
</li>
<li class="active">
<a href="/contact">Contact</a>
</li>
</ul>
</li>
我在子文件夹:http://localhost/project/public中开发项目。并且zend navigation uri将链接显示为http://localhost/contact
的http://localhost/project/public/contact我如何将我的baseUrl应用于uri?
答案 0 :(得分:1)
您可以在xml文件中指定整个路线:
<home>
<label>Home</label>
<route>home</route>
<module>default</module>
<controller>index</controller>
<action>index</action>
</home>
这是一个命名路由,也是由模块,控制器,操作指定的。
答案 1 :(得分:0)
如果您使用生成网址的标准方式,则可以在生成网址之前设置基本网址,如此处所述。
http://framework.zend.com/manual/en/zend.controller.router.html#zend.controller.router.rewritebase
$request->setBaseUrl('/project/public/');