【问题标题】:woocommerce add to cart function returns errorwoocommerce 添加到购物车功能返回错误
【发布时间】:2019-11-15 20:19:19
【问题描述】:

我做了一个产品,想把它添加到购物车然后去结账页面

function redirect_to_gateway() {

    $my_post = array(
        'post_title'    => 'My post',
        'post_content'  => 'This is my post.',
        'post_status'   => 'publish',
        'post_author'   => 1,
        'post_type'     =>'product'
    );

    $product_ID = wp_insert_post( $my_post );

    if ( $product_ID ){
        add_post_meta($product_ID, '_regular_price', 100 );
        add_post_meta($product_ID, '_price', 100 );
        add_post_meta($product_ID, '_stock_status', 'instock' );


        WC()->cart->add_to_cart( $product_ID );
        exit( wp_redirect(wc_get_checkout_url()) );

    }

}

但是这行代码:

WC()->cart->add_to_cart( $product_ID );

每次都返回错误,我无法将产品添加到购物车

这是错误代码:

致命错误:未捕获的错误:在 null in 上调用成员函数 add_to_cart()

【问题讨论】:

  • 请尝试 add_composite_to_cart() 函数而不是 add_to_cart()
  • woocommerce中没有add_composite_to_cart功能

标签: php wordpress woocommerce


【解决方案1】:

你是在一个钩子上运行这个函数吗?也许这会有所帮助:WC()->cart and functions.php

【讨论】:

  • 是的,我在挂钩上运行它。 add_action('admin_post_redirect_to_gateway','redirect_to_gateway'); add_action('admin_post_nopriv_redirect_to_gateway','redirect_to_gateway');
猜你喜欢
  • 1970-01-01
  • 2018-05-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-18
  • 2014-02-25
  • 2015-10-10
相关资源
最近更新 更多