Woocommerce add_to_cart给了我致命的错误

时间:2015-03-18 03:12:40

标签: php wordpress woocommerce

我有以下代码使用Woocommerce插件将多个项目添加到购物车,它给我致命错误:

  

致命错误:达到最大功能嵌套级别'100',正在中止!在第94行的... \ wp-content \ plugins \ woocommerce \ woocommerce.php

我也尝试增加嵌套级别,但没有帮助。 这是代码:

add_action( 'init', 'multi_add_to_cart' );
function multi_add_to_cart() {
    if( !isset( $_POST['multi_add_to_cart_nonce'] )  ) return false;
    if ( !wp_verify_nonce( $_POST['multi_add_to_cart_nonce'], 'multi_add_to_cart_nonce') ) return false;
    global $woocommerce;
    $added_products = 0;
    foreach( $_POST['multi_add_to_cart'] as $variation_id => $variation ) {
        if( (int) $variation['quantity'] > 0 ) {
            $woocommerce->cart->add_to_cart(
                $variation['product_id'],   // string $product_id
                $variation['quantity'],     // string $quantity = 1
                (int) $variation_id,        // integer $variation_id = ''
                ( isset($variation['attributes']) && !empty($variation['attributes']) ) ? $variation['attributes'] : false // Attributes!
            );
           $added_products++;
        }
    }
    if( $added_products > 0 ) woocommerce_add_to_cart_message($variation['product_id'] );
}

1 个答案:

答案 0 :(得分:2)

可能有很多函数挂钩到init。尝试将init更改为template_redirect