У меня шесть различных пользовательских ролей - A, B, C, D, E и F. Я хочу назначить определенные роли A, B, C при покупке woocommerce.
Role A -> Role D
Role B -> Role E
Role C -> Role F
Обновление
Добавлен код, который я пробую, но он не меняет роли.
add_action( 'woocommerce_order_status_completed', 'custom_role_on_purchase', 100, 1 );
function custom_role_on_purchase( $order_id ) {
$order = wc_get_order( $order_id );
$user = $order->user_id;
$user_meta = get_userdata( $order->user_id );
$user_roles = $user_meta->roles;
if ( in_array( 'Role A', $user_roles ) ) {
$user->set_role( 'Role D' );
} else if ( 'Role B', $user_roles ) ) {
$user->set_role( 'Role E' );
} else if ( 'Role C', $user_roles ) ) {
$user->set_role( 'Role F' );
}
}