如何隐藏某些菜单项 - Zend Navigation

发布于 2025-01-06 13:41:08 字数 1000 浏览 0 评论 0原文

我在我的网站中使用 zend navigation,并且有以下 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>News</label>
            <uri>/news</uri>
        </page1_2>
        <page1_3>
            <label>Contact</label>
            <uri>/contact</uri>
        </page1_3>
    </pages>
  </page1>
 </nav>
</config>

然后我呈现如下所示的菜单

<?=$this->navigation()->menu();?>

输出

- Site  
 - Home   
 - News  
 - Contact   

想要的输出

- Site  
 - Home    
 - Contact   

如何从菜单中删除新闻项而不影响其他菜单呈现?

I am using zend navigation in my site and I have the following 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>News</label>
            <uri>/news</uri>
        </page1_2>
        <page1_3>
            <label>Contact</label>
            <uri>/contact</uri>
        </page1_3>
    </pages>
  </page1>
 </nav>
</config>

Then I render the menu like below

<?=$this->navigation()->menu();?>

Output

- Site  
 - Home   
 - News  
 - Contact   

Wanted Output

- Site  
 - Home    
 - Contact   

How can I remove News item from the menu without affect other menu rendering?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

绝對不後悔。 2025-01-13 13:41:08

您可以使用可见标志隐藏菜单条目,您可以将其添加到要隐藏的条目中,在您的情况下 ...

<?xml version="1.0" encoding="UTF-8"?>
<config>
  <nav>
    <page1>
      <label>Site</label>
      <uri>/</uri>
      <pages>
        ...
        <page1_2>
          <label>News</label>
          <uri>/news</uri>
          <visible>0</visible>
        </page1_2>
        ... 
      </pages>
    </page1>
  </nav>
</config>

仅使用 0 xml 文件中的1,因为无法识别 falsetrue。您可以在 Zend 框架中找到所有可能的选项:文档:页面 - Zend 框架手册

如果您想要面包屑菜单中的不可见条目,您可以通过添加 setRenderInvisible( true ) 暂时禁用可见标志,

<?= $this->navigation()->breadcrumbs()->setRenderInvisible( true ); ?>

您可以在该帮助器中找到 此处

Vou can hide menu entries with visible flag, that you add to the entry you would like to hide, in your case <page1_2>...</page1_2>:

<?xml version="1.0" encoding="UTF-8"?>
<config>
  <nav>
    <page1>
      <label>Site</label>
      <uri>/</uri>
      <pages>
        ...
        <page1_2>
          <label>News</label>
          <uri>/news</uri>
          <visible>0</visible>
        </page1_2>
        ... 
      </pages>
    </page1>
  </nav>
</config>

Only use 0 or 1 within the xml file because false or true aren't recognized. All possible options you will find at Zend Framework: Documentation: Pages - Zend Framework Manual.

If you want the invisible entry in the breadcrumbs menu you can temporally disable the visible flag by adding setRenderInvisible( true )

<?= $this->navigation()->breadcrumbs()->setRenderInvisible( true ); ?>

All options of this helper you find here.

澜川若宁 2025-01-13 13:41:08

尝试使用这个:

<visible>0</visible>

Try using this:

<visible>0</visible>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文