zf2导航,如何基于会话隐藏一些项目

时间:2014-08-31 06:47:32

标签: zend-framework zend-framework2

我的zendframwork 2应用程序在我的application / module.php中包含一个导航,这个导航包含许多项目,其中一些是(登录 - 注销 - 注册)

我不需要一直显示三个在导航菜单中..当用户没有登录时我必须告诉他:登录 - 注册,登录后,我必须只向他显示退出链接

我该怎么做?

2 个答案:

答案 0 :(得分:4)

Removing pages

Module.php

public function onBootstrap(MvcEvent $e)
{               
    $application = $e->getApplication();
    $serviceManager = $application->getServiceManager();
    if (user not login) {
        $container = $serviceManager ->get('navigation');
        $logoutPage = $container->findBy('route' , 'logout');
        $container->removePage($logoutPage);
    }
}

答案 1 :(得分:-2)

<?php if (isset($_SESSION["login"]) { ?>

    <a href="#">Logout</a>

<?php } else { ?>

    <a href="#">Login</a>
    <a href="#">Register</a>

<?php } ?>

或类似的东西可能有用。替换&#34;登录&#34;与你的无关的关键。