Woocommerce добавляет бесплатные продукты с полем ACF Post Object - PullRequest
0 голосов
/ 30 ноября 2018

Я пытаюсь создать пользовательский функционал в плагине Woocommerce с помощью Advanced Custom Fields (ACF).

Я уже создал некоторый код, но он не работает должным образом.

Я хочу выбрать(простые) продукты в продукте Woocommerce с полем пост-объекта ACF.Эти продукты должны быть добавлены бесплатно в корзину Woocommerce, когда этот продукт будет добавлен в корзину.Также, когда я добавляю два или более элементов, бесплатные продукты должны быть добавлены вместе.

Я также получил несколько изображений, как должна работать ситуация.

Это настройка поля ACF.

ACF FIELD

Например: это продукт, который мы отдаем.

enter image description here

Это продукт, который мы отдаем, выбранный в одном продукте Woocommerce.

enter image description here

Это мой действительный код:

add_action('woocommerce_check_cart_items', 'free_products' );

function free_products() { 
    if( ( is_cart() || is_checkout () ) {
        $free_product = get_field('gratis_producten'); // Incentive product we are giving away
        $cart_id = WC()->cart->generate_cart_id( $free_product );
        $free_products_in_cart = WC()->cart->find_product_in_cart( $cart_id );

        if( $free_product ) {
            // Removing existing "free products" from the cart.
            WC()->cart->remove_cart_item( $free_products_in_cart ); 
            // Adding to cart 40 free products 
            WC()->cart->add_to_cart( $free_product, 40 );
        }
    }
}

Любая помощь будет высоко оценена.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...