【问题标题】:(WP) Create New Role Via Plugin(WP) 通过插件创建新角色
【发布时间】:2014-05-09 21:32:50
【问题描述】:

我想在 Wordpress 网站上创建新角色,我已经制作了插件并将此功能放在插件文件中。这是示例代码:

add_role( 'imageuploader', 'Image Uploader', $capabilities );
$capabilities = array(
                      'read' => true,
                      'edit_posts' => true,
                      'delete_posts' => true,
                      'upload_files' => true,
                     );

之后,我将创建新用户并将此角色分配给该用户。我尝试使用该用户登录名登录 WP 管理员,结果如下:您没有足够的权限访问此页面。

为什么会显示这个错误?我已经为该用户角色添加了读取功能。

【问题讨论】:

    标签: wordpress


    【解决方案1】:

    Advanced Access Manager

    WPFront User Role Editor

    使用此插件添加用户角色并管理您想要的访问功能。

    $result = add_role(
        'basic_contributor',
        __( 'Basic Contributor' ),
        array(
            'read'         => true,  // true allows this capability
            'edit_posts'   => true,
            'delete_posts' => false, // Use false to explicitly deny
            'upload_files ' => true,
        )
    );
    if ( null !== $result ) {
        echo 'Yay! New role created!';
    }
    else {
        echo 'Oh... the basic_contributor role already exists.';
    }
    

    或添加您的主题 function.php 并将您的卷名管理到角色类型名称

    function add_theme_caps() {
        $role = get_role( 'roletypename' );
        // create if neccesary
        if (!$role) $role = add_role('roletypename', 'Role Name'); 
        // add theme specific roles
        $role->add_cap('delete_posts');
        $role->add_cap('delete_published_posts');
        $role->add_cap('edit_posts');
        $role->add_cap('edit_published_posts');
        $role->add_cap('publish_posts');
        $role->add_cap('read');
        $role->add_cap('upload_files');
    }
    add_action( 'admin_init', 'add_theme_caps');
    

    【讨论】:

    • 第二个代码完美运行。非常感谢。 :D
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-20
    • 1970-01-01
    • 2023-01-13
    • 2020-11-10
    • 1970-01-01
    • 2011-03-21
    相关资源
    最近更新 更多