Лимит даты заказов для изменения статуса

[ad_1]

Здравствуйте, есть такая проблема. Мы выкатывали сайт без бонусной программы, теперь мы хотим открыть доступ к ней для клиентов, и чтобы заказы считались с момента запуска программы. У вас в плагине в классе BfwPoints есть функция которая считает сумму заказа.

  /**
     * Находим сумму всех оплаченных заказов клиента
     * так как wc_get_customer_total_spent ($to_user->ID); включает сумму не оплаченных заказов тоже.
     * @param int $userId
     * @return float
     * @version 5.2.0
     *
     */
    public static function getSumUserOrders(int $userId): float
    {
        $val = get_option('bonus_option_name');
        $order_staus = $val['add_points_order_status'] ?? 'completed';
        $order_staus = "wc-".$order_staus;
        global $wpdb;
        $total_alls = $wpdb->get_var( "SELECT SUM(pm.meta_value) FROM {$wpdb->prefix}postmeta as pm
INNER JOIN {$wpdb->prefix}posts as p ON pm.post_id = p.ID
INNER JOIN {$wpdb->prefix}postmeta as pm2 ON pm.post_id = pm2.post_id
WHERE p.post_status LIKE '$order_staus' AND p.post_type LIKE 'shop_order'
AND pm.meta_key LIKE '_order_total' AND pm2.meta_key LIKE '_customer_user'
AND pm2.meta_value LIKE $userId
" );
        if(empty($total_alls)){
            $total_alls=0;
        }
        return $total_alls;
    }

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

 

This site will teach you how to build a WordPress website for beginners. We will cover everything from installing WordPress to adding pages, posts, and images to your site. You will learn how to customize your site with themes and plugins, as well as how to market your site online.

Buy WordPress Transfer