7

我正在开发一个购物车插件,并计划为客户创建一个新的用户角色。

我的问题是如何创建自定义功能,以便我可以将这些自定义功能分配给新的用户角色,这个答案提供了一种创建新功能的方法,但它只是原始功能的新名称。

谁能解释如何创建一个控制一些自定义功能的全新功能?

4

2 回答 2

7

您首先应该了解,Wordpress 用户角色就像一组功能一样简单。话虽如此,既然你说你正在创建一个插件,我想你对编码并不陌生,因此不害怕编写你的解决方案而不是为此使用另一个插件。

此代码应帮助您创建新用户角色并向其添加自定义功能。

<?php

// create a new user role

function wpeagles_example_role()
{
    add_role(
        'example_role',
        'example Role',
        [
            // list of capabilities for this role
            'read'         => true,
            'edit_posts'   => true,
            'upload_files' => true,
        ]
    );
}

// add the example_role
add_action('init', 'wpeagles_example_role');

要向此用户角色添加自定义功能,请使用以下代码:

//adding custom capability
<?php
function wpeagles_example_role_caps()
{
    // gets the example_role role object
    $role = get_role('example_role');

    // add a custom capability 
    // you can remove the 'edit_others-post' and add something else (your     own custom capability) which you can use in your code login along with the current_user_can( $capability ) hook.
    $role->add_cap('edit_others_posts', true);
}

// add example_role capabilities, priority must be after the initial role     definition
add_action('init', 'wpeagles_example_role_caps', 11);

进一步参考:https ://developer.wordpress.org/plugins/users/roles-and-capabilities/

于 2018-02-15T16:28:00.367 回答
0

您可以通过插件创建自定义角色和功能。自定义代码提供了两个选项,或者您可以使用现有插件。

对于自定义代码: https ://wordpress.stackexchange.com/questions/35165/how-do-i-create-a-custom-role-capability

使用现有插件: 用户角色和功能

于 2015-02-04T04:13:21.577 回答