0
私は、ユーザーの自動的に変化する役割のPHP実現に問題があります。 私はカスタムロールdovclient
を持っています。最初のユーザー注文はロールCustomer
を取得します。ユーザの注文総数によるWoocommerceの変更の役割
購入する製品の合計が500ドルの場合は、ユーザーの役割を変更する必要があります。
だから私は$customer_orders
がカウントされ、そして私が注文の数によって作業機能を作ることを、私は知っている機能
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_orders > 2
の場合は、ロールを変更します。
しかし、注文価格の合計で私は問題があります。役割は変化しません。どうしてか分かりません。おそらく問題がありますforeach
...
私を手伝ってください!