4个WordPress导航菜单访问权限控制插件

Nav Menu Roles

1602732256-8b79db617a0268f

该插件可让您根据用户角色隐藏自定义菜单项。因此,如果您在菜单中有一个仅想向登录用户,某些类型的用户甚至仅向未登录用户显示的链接,则此插件适合您。

导航菜单角色非常灵活。除了标准用户角色之外,您还可以使用nav_menu_roles过滤器添加带有自定义标签的复选框,然后使用nav_menu_roles_item_visibility过滤器检查所需条件,从而自定义功能。您可以检查任何用户元值(如功能)和其他插件添加的任何自定义属性。

重要的提示

在WordPress菜单中,项目和页面是完全独立的实体。导航菜单角色不限制对内容的访问。导航菜单角色用于显示/隐藏导航菜单项。如果您希望限制内容,则还需要使用会员插件。

Nav Menu Roles 是一个比较早的相关插件了,它的功能很简单,默认只能设置非登录或已登录用户访问,已登录用户可以选择用户角色。仅此而已,如果要求不高,这个插件就适合你。

User Menus

1602732258-46b6fbb2490e423

该插件允许您将可见性控件应用于菜单项,例如谁可以看到每个菜单项(每个人、注销的用户、登录的用户、特定的用户角色),从而使您可以更好地控制导航菜单。

它还使您可以在导航菜单中显示已登录的用户信息,例如“ Hello,John Doe”。该插件还允许您将登录、注册和注销链接添加到菜单。

完整功能列表

User Menus允许您执行以下操作:

  • 向所有人显示菜单项
  • 仅向注销/未登录用户显示菜单项
  • 仅向登录用户显示菜单项
  • 向具有或没有特定用户角色的用户显示菜单项。
  • 在具有自定义大小选项的菜单项中显示已登录用户的头像{avatar}。
  • 在菜单项中显示已登录用户的用户名{username}
  • 在菜单项中显示已登录用户的名字{first_name}
  • 在菜单项中显示已登录用户的姓氏{last_name}
  • 在菜单项中显示登录用户的公开显示名称{display_name}
  • 在菜单项中显示已登录用户的昵称
  • 在菜单项中显示登录用户的邮箱{email}
  • 将注销链接添加到菜单(可选的重定向设置)
  • 将注册链接添加到菜单(可选的重定向设置)
  • 将登录链接添加到菜单(可选的重定向设置)

**包括自定义菜单导入器,该菜单导入器将允许使用普通菜单导出/导入来迁移用户菜单数据。

If Menu

1602732260-423e36239a749f7

根据可见性规则,控制网站的访问者可以看到哪些菜单项。这里有一些例子:

  • 仅在以下情况下显示菜单项 用户已登录(登录状态)
  • 隐藏菜单项 手机端访问
  • 显示菜单项 对某些用户角色
  • 隐藏登录或注册链接 已登录用户
  • 显示菜单项 根据国家地区显示
  • 显示菜单项仅适用于 对某种会员级别
  • 显示菜单项供访问者浏览 对某种语言

该插件易于使用,每个菜单项都会有一个新选项“更改菜单项的可见性”,这将允许选择可见性规则。

插件特色

  • 基本可见性规则集
    • 用户状态 User is logged in
    • 用户角色Admin Editor Author
    • 页面类型 Front page Single page Single post
    • 存档页面(年份,类别,搜索结果等)
    • 访客客户端 Is Mobile
  • 高级可见性规则–(付费版功能)
    • 访客位置–检测访客的国家
    • 访客语言–检测访客选择的语言
    • WooCommerce订阅–为具有活跃订阅的用户显示菜单
    • WooCommerce会员资格–为拥有有效会员计划的客户显示菜单
    • 分组–检测用户是否在特定组中
    • WishList Member–检测用户的会员等级
    • Restrict Content Pro –检测用户的订阅级别
  • 多个规则–混合多个规则以使菜单项可见
    • 显示是否User is logged inDevice is mobile
    • 显示是否User is AdminIs front page
  • 支持添加自定义规则

Menu Item Visibility Control

1602732261-469a0ff4a2bf096

使用此插件,您可以使用WordPress 条件标签在前端启用或禁用菜单项。

用法

您必须在菜单项选项表单的“可见性”框中插入条件标签。您可以使用任何PHP或WordPress函数来构建疯狂的条件和菜单项逻辑。例如,要隐藏主页上的菜单项,可以将可见性设置为:! is_home()

为已登录用户隐藏菜单项:! is_user_logged_in()

只向具有“管理员”角色的用户显示菜单项:in_array('administrator', $GLOBALS['current_user']->roles)

发表评论