Woocommerce add_to_cart 给我致命错误

Woocommerce add_to_cart giving me fatal error

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

Fatal error: Maximum function nesting level of '100' reached, aborting! in ...\wp-content\plugins\woocommerce\woocommerce.php on line 94

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

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'] );
}

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