我正在尝试设置用户角色。如果特定用户角色(销售代理)创建用户。
创建的用户应具有b2b角色,而不是customer角色
以下是我的尝试:
add_action( \'init\', \'b2b_set_user_role\' );
function b2b_set_user_role() {
if ( is_user_logged_in() && wcb2bsa_has_role( get_current_user_id(), \'sales_agent\' ) )
{
$user->remove_role( ‘customer’ );
$user->add_role( ‘b2b’ );
}
}
我希望有人能帮助我
SO网友:nmr
您可以使用user_register
action, 注册新用户后调用
要添加或删除角色/大写,请WP_User
类提供了方法:
您的代码可能如下所示:
add_action( \'user_register\', \'se385135_user_register\' );
function se385135_user_register( $user_id )
{
$user = wp_get_current_user();
if ( !isset( $user->ID ) || $user->ID == 0 )
return;
if ( !in_array( \'sales_agent\', $user->roles ) )
return;
$created_user = get_user_by( \'ID\', $user_id );
if ( $created_user === false )
return;
$created_user->add_role( \'b2b\' );
$created_user->remove_role( \'customer\' );
}