Wordpress:更新用户角色时,功能不会改变

Posted

技术标签:

【中文标题】Wordpress:更新用户角色时,功能不会改变【英文标题】:Wordpress: When updating user roles, the capabilities does not change 【发布时间】:2016-11-30 21:52:53 【问题描述】:

我创建了自定义用户角色 - 合作伙伴和分销商。合作伙伴可以看到库存页面、订单页面和客户页面。而经销商只能看到订单页面和客户页面。我正在使用高级访问管理器,现在我可以限制每个用户可以看到的页面。

现在,我想更新某个用户的用户角色,从经销商到合作伙伴。我使用了以下代码:

wp_update_user( array ('ID' => $userID, 'role' => 'partner') ) ;

当我回应用户角色时,我得到了合作伙伴。但是我只能看到 2 个页面(订单页面和客户页面)而不是 3 个页面(库存、订单和客户页面)

我该怎么办?提前谢谢!

【问题讨论】:

【参考方案1】:

更具体地说,可以通过创建 WP_user 类的实例并调用 add_role() 或 remove_role() 方法来设置用户的角色。

$usr_obj = 新的 WP_User($userID); // 移除角色 $usr_obj->remove_role('distributor'); // 添加角色 $usr_obj->add_role('合作伙伴');

试试这个代码,它肯定会工作。

【讨论】:

以上是关于Wordpress:更新用户角色时,功能不会改变的主要内容,如果未能解决你的问题,请参考以下文章

WordPress 创建自定义功能

Wordpress 用户角色/权限

用户角色 - 添加角色功能 php 片段 - Wordpress

WordPress 用户角色自动更改

如何将 WordPress 用户角色添加到 Woocommerce 新管理员订单电子邮件主题

php WordPress功能,用于根据用户角色重定向用户登录