2012-02-16 55 views
1

我在我的网站中设置了zend导航,我在本地开发时遇到了问题。Zend导航Uri和BaseUrl

我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导航uri显示链接为http://localhost/contact默认的http://localhost/project/public/contact

我该如何将我的baseUrl应用于uri?

+0

显示在你是如何生成的链接指向HTTP代码://本地主机/接触 – emaillenin 2012-02-16 18:16:34

+0

@emaillenin我刚插入它 – dextervip 2012-02-16 18:34:59

回答

1

你可以指定你的XML文件的全路径:

<home> 
     <label>Home</label>  
     <route>home</route> 
     <module>default</module> 
     <controller>index</controller> 
     <action>index</action> 
    </home> 

这是一个名为路线以及由模块,控制器,动作规定。

+0

指定模块,控制器,动作可行,但写起来有点无聊,是唯一的解决方案吗? – dextervip 2012-02-17 13:02:28

+0

你总是可以在你的布局中添加一个基本标签,它应该可以工作。 – RockyFord 2012-02-18 07:08:14