Есть ли функция woocommerce для подсчета, сколько раз текущий товар был добавлен в корзину - PullRequest
0 голосов
/ 01 ноября 2019

Я создаю собственный плагин, и мне нужна статистика о продукте. Я хочу посчитать, сколько раз текущий продукт вместе продавался в корзину (только что добавлен в корзину). enter image description here

1 Ответ

0 голосов
/ 01 ноября 2019

Будет запускаться действие после добавления элемента в корзину и вставки IP-адреса пользователя в таблицу.

add_action('woocommerce_add_to_cart' , function() {    
    global $product;

    $user_ip = $_SERVER['REMOTE_ADDR'];

    $meta = get_post_meta( $product->ID, 'added_in_cart', TRUE );

    $meta = '' !== $meta ? explode( ',', $meta ) : array();
    $meta = array_filter( array_unique( $meta ) );

    if( ! in_array( $user_ip, $meta ) ) {

        array_push( $meta, $user_ip );
        update_post_meta( $product->ID, 'added_in_cart', implode(',', $meta));
    }
});

Отображение определенного продукта, добавленного в счетчик товаров перед кнопкой добавления в корзину.

add_action( 'woocommerce_before_add_to_cart_button', 'add_content_before_addtocart_button_func',0 );
function add_content_before_addtocart_button_func() {

        global $product;
        $id = $product->id;         
        $meta = get_post_meta( $id, 'added_in_cart', TRUE );
        if(empty($meta))
        {
            $result = 0;
        }
        else
        {        
        $result = count(explode(',',$meta)); 
        }       
        echo "<div class='custom-visitor-count-st' style='font-size: 20px;'>";
        echo "<i class='fa fa-cart'></i>";
        echo "<span class='cv-value'>";
        echo $result;
        echo " times added to cart</span></div>";
}

Вы можете использовать любой другой крючок woo commerce, чтобы отобразить количество добавленных товаров в корзину.

...