将所有自定义功能添加到管理员

时间:2021-09-02 作者:user2806026

使用“添加自定义帖子类型时”;“能力类型”;参数,则会自动为post类型生成自定义功能。

https://developer.wordpress.org/reference/functions/register_post_type/#capability_type

即注册名为“的帖子类型”;“汽车”;

\'capability_type\' => array(\'cars\', \'car\')   
自动生成“edit\\u cars”、“delete\\u car”等。

之后,可以将这些功能添加到自定义用户角色,以控制其访问和权限。到目前为止还不错。

但是管理员角色是否应该具有所有功能,包括每个默认值的自定义功能?

使用上述方法时,“我的管理员”用户将失去编辑相关帖子类型的权限。

这里的正确方法是什么?是否应该像添加到其他角色一样手动将所有自定义大写添加到管理员角色?

TIA公司

1 个回复
SO网友:Sally CJ

这里的正确方法是什么?是否应该像添加到其他角色一样,手动将所有自定义大写添加到管理员角色?

是的,因为register_post_type() 不会自动将功能分配给任何用户或用户角色,包括管理员,但如果启用了多站点,则超级管理员将始终能够管理(例如编辑或删除)帖子类型中的帖子,除非do_not_allow 在其能力范围内存在(由返回map_meta_cap()) — 看见WP_User::has_cap().

相关推荐

未定义的偏移量:1067行的>[...]/wp-includes/capabilities.php中的0

嘿,我在我的localhost设置中得到了这个错误消息,但只有在启用Genesis框架的情况下;WordPress二十一行。当我想创建一个新帖子时,就会发生这种情况。如果我刷新页面,错误会重复,但帖子本身会被创建,一切似乎都很好。有人知道这是什么原因吗?Notice: Undefined offset: 0 in /var/www/secret/htdocs/wp-includes/capabilities.php on line 1067 Notice: Undefined offset: 0