워드프레스 우커머스(WooCommerce) 쇼핑몰에서 주문이 완료되면 해당 주문 ID와 연결된 사용자 역할(User Role)을 'customer'(고객)에서 'subscriber'(구독자)로 변경하려는 경우에 다음과 같이 'woocommerce_order_status_completed' 액션(후크)을 사용할 수 있습니다.
function wpa_120656_convert_paying_customer( $order_id ) { $order = new WC_Order( $order_id ); if ( $order->user_id > 0 ) { update_user_meta( $order->user_id, 'paying_customer', 1 ); $user = new WP_User( $order->user_id ); // Remove role - 역할 제거 $user->remove_role( 'customer' ); // Add role - 역할 추가 $user->add_role( 'subscriber' ); } } add_action( 'woocommerce_order_status_completed', 'wpa_120656_convert_paying_customer' ); // Source: stackoverflow
위의 코드가 현재 우커머스 버전에서 잘 작동하는지에 대해서는 테스트가 되지 않았습니다.
'woocommerce_order_status_completed'에 대한 자세한 내용은 이 페이지를 참고해보시기 바랍니다.