Questions tagged «user-roles»

一组用户功能的名称。

2
授予编辑者对边栏的访问权限
我想授予“编辑者角色”访问权限,以编辑侧边栏及其内容。我在那里有一个文本小部件,为了编辑此文本小部件,用户需要是管理员-这太糟了。如何授予“编辑者角色”权限,使他可以编辑侧边栏?

4
删除其他用户查看用户列表中管理员的能力?
(主持人注意:原始标题为“从用户菜单中删除管理员”) 我创建了一个客户端管理员角色,该角色实质上是一个具有添加/删除用户功能的编辑器。文章“ 编辑者可以创建除管理员以外的任何新用户 ”在帮助防止我的新客户端管理员角色编辑或创建True管理员用户方面表现出色。 但是,理想的做法是在查看用户时将管理员与客户端管理员隔离。我希望他们“相信”他们是其网站的管理员,但我不希望他们甚至能够查看我的角色/用户- 当他们位于“用户”中时,实际上向他们隐藏了“管理员”角色面板。

3
如何获得用户的角色
我需要获取与用户相关联的角色-而不是“当前登录的用户”。 我正在使用Buddypress(这与问题的性质无关),我处于bp_members()循环中。 在任何给定时间,我如何在循环中检索要报告的用户的角色? 谢谢。
15 user-roles 

2
如何允许用户角色在仅低于其级别的角色下创建新用户?
我的网站中还有三个角色。 医生 接待员 客人 这些角色通过以下代码添加: * adding Doctor role */ $doctor_role = add_role('Doctor', __('Doctor'), array('read'=>'true')); /* adding Receptionist role */ $receptionist_role = add_role('Receptionist', __('Receptionist'), array('read'=>'true')); /* adding Guest role */ $guest_role = add_role('Guest', __('Guest'), array('read'=>'true')); 默认情况下,Administrator角色创建所有其他角色。但是我想按用户级别限制此分配角色。我的意思是: 管理员-应该能够创建所有角色用户-默认情况下是可能的。 Doctor- 仅应能够创建Receptionist和Guest角色用户 接待员-应该能够创建Guest角色的用户ONLY 访客- 不允许创建任何用户。 怎么办 如果我不使用任何插件就可以实现这一目标,那就更好了。

2
如何为用户角色添加功能?
我正在管理Wordpress网络,并想将unfiltered_html用户功能添加到已经预定义的Admin用户角色中。在Wordpress的标准安装中,管理员帐户已经具有此功能,但在MU安装中,只有超级管理员才具有此功能。WordPress的角色和能力。 如何在主题或插件中增加管理员角色?

6
如何使所有人都能访问草稿帖子?
我的Wordpress网站上有几篇未发表的帖子,我试图使用普通的帖子标签(site.com/post-here)使普通用户(未登录)可以访问它。我了解这可能不是最佳做法,但出于我的特殊目的,需要这样做。 我尝试将以下代码段添加到我的functions.php文件中: function enable_view_drafts() { $role = get_role( 'subscriber' ); $role->add_cap( 'read_private_posts' ); $role->add_cap( 'edit_posts' ); } add_action( 'after_setup_theme', 'enable_view_drafts'); 我也尝试使用init钩子代替after_setup_theme。没运气。 我的理解是对角色的更改已保存到数据库中,因此只需执行一次。这就是为什么我使用after_setup_theme钩子来调用函数的原因。 但是,当我尝试以普通用户身份访问页面时,系统显示的是404页面,而不是帖子内容。我也尝试加载预览URL(site.com/?p=212&preview=true),但是也没有用。 这些是我的猜测: 普通用户没有足够的时间caps来阅读草稿帖子。 任何用户(包括管理员)都无法测试和查看前端的草稿。 为了完成我要完成的工作,我必须进行哪些更改?如果不可能,您建议什么替代解决方案? 注意:我不是在寻找基于插件的解决方案。

2
重置默认角色和功能
我一直很难在角色中添加自定义帖子类型功能(向默认角色中添加功能),我怀疑周围的混乱可能导致了一些问题。我还安装和卸载了各种插件,其中一些插件增加了功能。结果,我的WP角色对象有些混乱。有谁知道重置功能的方法,还是我需要全新安装?

1
add_role()只运行一次?
我惊讶地发现add_role()修改了数据库,并且如果角色已经存在则失败。这里有两个含义,一个比另一个严重:1)如果您正在开发并更新add_role代码,则必须首先remove_role()2)一旦正确,就永远不必运行该代码再次。 因此,通常我一直将add_role()放在wp_loaded动作挂钩中。并且由于我正在开发中,所以我还在add_role之前添加了remove_role(),因此可以确定,如果我修改了大写字母列表,它将实际上生效。 但是很明显,每次访问博客页面时都在运行此命令。好的,我可以将其置于仅限管理员的操作中,也可以在“用户”或“工具”下创建一个插件页面,该角色可以一次创建。我想我希望有一个更简单,更优雅的解决方案。 我不认为这里有一次run_once动作吗? 还是最佳实践只是添加角色,然后多次使用add_cap()?即使那样,我仍然认为add_cap正在访问数据库。 仅考虑减少不必要的数据库访问的最佳方法。您的最佳做法是什么?


2
wp_数据库在哪里定义了可用的角色?
我在列表中测试了我在多站点网络上使用的插件的私人Beta版。 插件作者在其中具有添加自定义角色的代码。他们有一个错误,该错误消除了赋予用户除其一个自定义角色以外的任何角色的能力。 当我访问时../wp-admin/network/site-users.php,“添加用户”角色下拉列表仅显示此插件添加的一个角色。更改角色下拉菜单显示所有WP默认角色,以及此角色和其他插件添加的一些其他角色。如果我尝试将用户更改为这些角色之一,则会出现“您不能为用户提供该角色”错误页面。 我一直在与开发人员讨论此事,他们似乎感到困惑。 我一直在浏览数据库和法典,但找不到有效角色的定义位置。


2
添加角色和功能时应该采取什么动作?
我将使用add_role()和$ role-> add_cap()设置新的自定义角色并将新功能附加到现有角色。 我想知道最好的地方在哪里?显然,我可以直接在functions.php中完成它并完成它。但这是最佳做法吗?我是否只需要在admin_init上执行此操作?还是应该在init上执行? 我不完全确定使用init动作挂钩有什么最佳实践,而不仅仅是将直接函数调用放在functions.php中。 感谢您的输入!


4
自定义帖子类型角色权限不会让我阅读
我无法获得它,因此我作为供应商的用户角色可以读取货件的张贴类型。它显示在他们的菜单中,但是当您单击它时,您将无法查看此页面错误消息。 如果我可以,add_cap('read_posts')但我不希望他们仅查看装运帖子类型,则可以正常查看。 我具有以下功能的供应商用户角色。 WP_Role Object ( [name] => supplier [capabilities] => Array ( [read] => 1 [edit_shipment] => 1 [read_shipment] => 1 [edit_others_shipments] => 1 [publish_shipments] => 1 [read_private_shipments] => 1 [edit_shipments] => 1 [create_shipment] => 1 [read_shipments] => 1 ) ) 我已经为运输设置了以下类型 function shipment_post_type() { $labels = array( 'name' …

3
以编程方式创建用户时发送用户激活电子邮件
我想知道这里是否有人可以提供帮助。 基本上,我创建了一个自定义注册表单,该表单在通过验证后会将用户插入到用户表中。 function _new_user($data) { // Separate Data $default_newuser = array( 'user_pass' => wp_hash_password( $data['user_pass']), 'user_login' => $data['user_login'], 'user_email' => $data['user_email'], 'first_name' => $data['first_name'], 'last_name' => $data['last_name'], 'role' => 'pending' ); wp_insert_user($default_newuser); } 现在,我需要执行的操作不是发送确认电子邮件,我知道我可以使用以下代码进行处理。 wp_new_user_notification($user_id, $data['user_pass']); 我想发送一个用户激活电子邮件。我已经尝试了一些方法,但是似乎无法找到任何具体的方法。希望以前有人遇到过这个问题。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.