Как изменить роль пользователя после покупки в Woocommerce

#wordpress #woocommerce

#wordpress #woocommerce

Вопрос:

спасибо всем, кто хотел мне помочь, я просто хочу знать, как изменить роль пользователя в WordPress, когда пользователи что-то покупают. Я использую WooCommerce. С уважением

Комментарии:

1. какую роль вы хотите назначить пользователям? вы пытаетесь сделать это вручную или вам нужно сделать это с помощью кодирования, например, когда пользователь что-то покупает, его роль меняется автоматически? или администратор изменит роль пользователя… пожалуйста, уточните это, а также, если вы пытаетесь сделать это с помощью кода, пожалуйста, покажите свой код и что вы уже пробовали для его достижения..

2. Эй, брат, спасибо за ответ, и да, это должно быть автоматически, я могу изменить роль пользователя вручную, но это требует очень медленных процессов, поэтому, когда пользователь регистрируется, его роль — покупатель, и что мне нужно, это как сразу после покупки клиентом в WooCommerce роль пользователя автоматически меняется на другую, которая называется agent. С уважением

Ответ №1:

Вы можете использовать крючки действий Woocommerce. проверьте мой приведенный ниже код.

 add_action( 'woocommerce_thankyou', 'change_user_role_afte_buying' );
function change_user_role_afte_buying( $order_id ) {

    $order = wc_get_order( $order_id );
    $items = $order->get_items();

    $products_to_check = array( '1', '2', '3' ); // your product ids for checking someting buy

    foreach ( $items as $item ) {
        if ( $order->user_id > 0 amp;amp; in_array( $item['product_id'], $products_to_check ) ) {
            
            $user = new WP_User( $order->user_id ); // get user Object
            $user->remove_role( 'customer' ); // remove old role
            $user->add_role( 'new-role' ); // add new role
            break;  // Exit the loop

        }
    }
}
  

Комментарии:

1. Эй, братан, спасибо за ответ, твой код великолепен, но у меня он не сработал, я оставлю URL-адрес, где я объясню, как я его использую. Спасибо. URL: miblocdenotas.com/368354

2. Роли покупателя и агента уже есть в системе? кроме того, проверьте мои правки.

3. Да, брат, если человек заходит на сайт, у него есть роль посетителя, и когда он подпишется, автоматически изменится на роль покупателя… когда пользователь является покупателем, это означает, что он уже в системе. И роли уже настроены в системе.

4. Доступна ли новая роль также в системе, я имею в виду роль агента?