代码之家  ›  专栏  ›  技术社区  ›  Kevin

以编程方式显示/更改菜单链接

  •  2
  • Kevin  · 技术社区  · 15 年前

    当一个匿名用户来到这个站点时,主链接中的最后一个条目需要说Login。但是,如果他们登录了,就需要显示Account。

    在代码中实现这一点最简单的方法是什么?

    1 回复  |  直到 7 年前
        1
  •  4
  •   user113292 user113292    15 年前

    我通过使用 me aliases 模块为登录用户的帐户页生成一个单一路径(例如。 user/me )两者相加 user/login

    如果您想以编程方式执行此操作,可以使用 menu_link_save() :

    $account = array(
      'link_path' => 'user/me',
      'link_title' => t('Account'),
      'weight' => 100,
    );
    
    $login = array(
      'link_path' => 'user/login',
      'link_title'=> t('Login'),
      'weight' => 100,
    );
    
    menu_link_save($account);
    menu_link_save($login);
    

    由于Drupal处理菜单权限的方式,登录用户将看不到 登录 (已登录的用户无权访问 用户/登录 )但你会看到的 帐户 ,并且注销的用户将看到 登录 但我看不见 帐户 用户/我 ).