我使用的WP主题的自定义帖子类型为“Vehicle”,自定义用户角色为“Seller”。
我正在尝试删除卖方角色用户的发布工具功能,只允许他们“提交审核”** - 我一直在阅读这篇文章,我尝试了一个名为'WP Role的插件编辑'但这不起作用。
我也尝试将此代码放入我的函数文件中,但这仍然没有任何效果。
$role = get_role('seller');
$role->remove_cap('publish_posts', false);
有没有办法解决这个问题,我尝试过各种网站的几个不同的代码片段,但似乎都没有。非常感谢您的意见。
执行var_dump($ role)时的信息
object(WP_Role)#464 (2) {
["name"]= string(6) "seller"
["capabilities"]= array(20) {
["read"]= bool(true)
["upload_files"]= bool(true)
["assign_seek_terms"]= bool(true)
["create_product"]= bool(true)
["edit_post"]= bool(true)
["edit_gallery_group_post"]= bool(true)
["edit_download_group_post"]= bool(true)
["edit_seek_post"] = bool(false)
["read_seek_post"]= bool(false)
["delete_seek_post"] = bool(false)
["edit_seek_posts"] = bool(true)
["edit_others_seek_posts"] = bool(false)
["publish_seek_posts"] = bool(true)
["read_private_seek_posts"] = bool(false)
["delete_seek_posts"] = bool(true)
["delete_private_seek_posts"] = bool(false)
["delete_published_seek_posts"] = bool(true)
["delete_others_seek_posts"] = bool(false)
["edit_private_seek_posts"]= bool(false)
["edit_published_seek_posts"]= bool(true)
}
}
答案 0 :(得分:1)
编辑:
查看您的var_dump数据,'卖家'没有" publish_posts'开始,因此无法删除!
答案 1 :(得分:0)
测试一下:
global $wp_roles;
$wp_roles->remove_cap( 'seller', 'publish_posts' );