提示
角色和无布局主题的更改不应该是主题的一部分,更应该是插件的主题。也许你会考虑一下这个话题,比如维护、主题切换和激活挂钩——插件更简单。
对于您的问题,您必须为自定义帖子类型添加角色新功能,并删除类型的功能post
. 激活时,更改以下功能的角色。
foreach ( self::$todo_roles as $role ) {
$wp_roles->add_cap( $role, \'edit_\' . self::$post_type_1 );
$wp_roles->add_cap( $role, \'read_\' . self::$post_type_1 );
$wp_roles->add_cap( $role, \'delete_\' . self::$post_type_1 );
$wp_roles->add_cap( $role, \'edit_\' . self::$post_type_1 . \'s\' );
$wp_roles->add_cap( $role, \'edit_others_\' . self::$post_type_1 . \'s\' );
$wp_roles->add_cap( $role, \'publish_\' . self::$post_type_1 . \'s\' );
$wp_roles->add_cap( $role, \'read_private_\' . self::$post_type_1 . \'s\' );
$wp_roles->add_cap( $role, \'delete_\' . self::$post_type_1 . \'s\' );
$wp_roles->add_cap( $role, \'delete_private_\' . self::$post_type_1 . \'s\' );
$wp_roles->add_cap( $role, \'delete_published_\' . self::$post_type_1 . \'s\' );
$wp_roles->add_cap( $role, \'delete_others_\' . self::$post_type_1 . \'s\' );
$wp_roles->add_cap( $role, \'edit_private_\' . self::$post_type_1 . \'s\' );
$wp_roles->add_cap( $role, \'edit_published_\' . self::$post_type_1 . \'s\' );
}
使用类似于上述的功能,您可以为角色添加功能。
还应执行此操作以删除该类型的所有权限post
.
$wp_roles->remove_cap( ... )
作为对源的提示。这个
self::$post_type_1
是自定义帖子类型类中的变量。这个
foreach
循环是将此功能经常添加到不同的角色。