【问题标题】:Display WordPress page templates dependent on user role根据用户角色显示 WordPress 页面模板
【发布时间】:2015-06-29 13:02:28
【问题描述】:

我想根据当前登录的用户(用户角色)显示页面模板。

WordPress 有一个用于模板的内置页面属性下拉选择。这是我正在寻找的功能示例。

场景 #1:编辑器登录到 WordPress 仪表板。他们去创建一个页面。在页面 UI 中,他们选择模板的下拉菜单。下拉列表仅包含模板:A、B 和 C。

场景 #2:管理员登录到 WordPress 仪表板。他们去创建一个页面。在页面 UI 中,他们选择模板的下拉菜单。下拉菜单显示模板:A、B、C、D 和 E。

基本上,我试图弄清楚如何根据用户的角色显示有限数量的模板,如果用户的角色是管理员,则显示所有模板。

【问题讨论】:

  • 请告诉我们你到目前为止做了什么。
  • 我已经为页面帖子类型创建了模板,但我无法修改 WordPress 的内置模板选择器。我已经搜索了一个可能与该元框交互的过滤器,但我似乎找不到任何接近我想要实现的东西。

标签: php wordpress templates


【解决方案1】:

你可以这样使用:

function get_user_role() {
    global $current_user;

    $user_roles = $current_user->roles;
    $user_role = array_shift($user_roles);

    return $user_role;
}

然后在您的 html 主题中,您只需输入 <?php echo get_user_role(); ?>

它会告诉你哪个用户登录了,然后你可以做任何你想做的事情。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-15
    • 2015-07-20
    • 1970-01-01
    • 2016-01-10
    • 1970-01-01
    • 2019-03-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多