Woocommerce使用ACF Post Object字段添加免费产品

时间:2018-11-30 08:04:09

标签: php wordpress woocommerce

我正在尝试使用高级自定义字段(ACF)插件在Woocommerce中构建自定义功能。

我已经创建了一些代码,但是不能正常工作。

我想在带有ACF发布对象字段的Woocommerce产品中选择(简单)产品。将该产品添加到购物车时,必须将这些产品免费添加到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 );
        }
    }
}

我们将不胜感激任何帮助。

0 个答案:

没有答案