Php Woocommerce按用户订单总数更改角色
我在php实现自动改变用户角色时遇到了一个问题。 所以我有了自定义角色Php Woocommerce按用户订单总数更改角色,php,wordpress,woocommerce,Php,Wordpress,Woocommerce,我在php实现自动改变用户角色时遇到了一个问题。 所以我有了自定义角色dovclient。首次用户订购获得角色客户 我需要改变用户角色,如果他购买的产品总计500美元 所以我有一个函数 function wpa_120656_convert_paying_customer( $order_id ) { $order = new WC_Order( $order_id ); $user_id = $order->user_id; $customer_orders =
dovclient
。首次用户订购获得角色客户
我需要改变用户角色,如果他购买的产品总计500美元
所以我有一个函数
function wpa_120656_convert_paying_customer( $order_id ) {
$order = new WC_Order( $order_id );
$user_id = $order->user_id;
$customer_orders = get_posts( array(
'numberposts' => -1,
'meta_key' => '_customer_user',
'meta_value' => $user_id,
'post_type' => 'shop_order',
) );
$total = 0;
foreach ( $customer_orders as $customer_order ) {
$order = wc_get_order( $customer_order );
$total += $order->get_total();
}
return $total;
if ( $total > 500 ) {
update_user_meta( $order->user_id, 'paying_customer', 1 );
$user = new WP_User( $order->user_id );
$user->remove_role( 'customer' );
$user->add_role( 'dovclient10' );
}
}
add_action( 'woocommerce_order_status_completed', 'wpa_120656_convert_paying_customer' );
我知道,$customer\u orders
正在计数,我通过计数订单使函数工作。我的意思是如果例中的$customer\u orders>2
,那么就改变角色
但总的订单价格,我有一个问题。角色不变。我不知道为什么。问题可能出在foreach
请帮帮我 惊人的帮助!0... 好啊我已经做到了
function wpa_120656_convert_paying_customer( $order_id ) {
$order = new WC_Order( $order_id );
$user_id = $order->user_id;
$customer_orders = get_posts( array(
'numberposts' => -1,
'meta_key' => '_customer_user',
'meta_value' => $user_id,
'post_type' => 'shop_order',
) );
$totall = 0;
foreach ( $customer_orders as $customer_order ) {
$order = wc_get_order( $customer_order );
$totall += $order->get_total();
}
if ( $totall > 500 ) {
update_user_meta( $order->user_id, 'paying_customer', 1 );
$user = new WP_User( $order->user_id );
if( get_role('customer') ){
$user->remove_role( 'customer' );
$user->add_role( 'dovclient' );
}
}
}
add_action( 'woocommerce_order_status_completed', 'wpa_120656_convert_paying_customer' );