WordPress WooCommerce Add to Cart only adds one product -


i'm quite new woocommerce , can not figure out one. i'm creating custom api (based on user requirement) , i'm letting user login in laravel using post request this:

public function login (request $req) {     global $woocommerce;     $v = \validator::make($req->all(), [         'username' => 'required|max:255',         'password' => 'required|max:255',     ]);     if ($v->passes())     {         $user = wp_signon(['user_login'=>$req->input("username"),"user_password"=>$req->input("password")],true);         if (is_wp_error($user) || !is_user_logged_in())         {             return response(['success' => false, 'message' => "invalid username or password."], 401);         }         $key = md5($user->id . $user->user_login. (time() + 7200) . $user->email);         $cookie = wp_generate_auth_cookie($user->id, (time() + 7200), "auth", $key);         $store = [             'user_login'      => $user->data->user_login,             'user_id'         => $user->data->id,             'user_nicename'   => $user->data->user_nicename,             'user_email'      => $user->data->user_email,             'user_url'        => $user->data->user_url,             'user_registered' => $user->data->user_registered,             'display_name'    => $user->data->display_name,         ];         session::push($cookie, $store);         wc()->cart->set_session();         return response(['auth_token' => $cookie, 'success' => true, 'cart'=>wc()->cart->get_cart_for_session(), 'timeout' => 7200], 200);     }     return response(['success' => false, 'message' => "required field(s) missing."], 401); } 

now, whenever add product cart, replaces previous value, , 1 item added cart. when login wordpress site , visit cart, shows error "undefined index", while cart empty. here's code adding item cart:

public function add($productid) {     //wc()->session->set_customer_session_cookie(true);     $cart_id = wc()->cart->generate_cart_id( $productid );     $prod_in_cart = wc()->cart->find_product_in_cart( $cart_id );     // add product if it's not in cart     if( ! $prod_in_cart )      {         wc()->cart->add_to_cart($productid,1,0,null,null);     }     return response([         'user'=>wc()->session->get_customer_id(),         'cart'=>wc()->cart,     ]); } 

i know i'm doing wrong don't know what. appreciated.


edit

if helps i'm using woocommerce version 2.3

you have hardcoded quantity 1. here function :

 wc()->cart->add_to_cart($productid,1,0,null,null); 

in function, second parameter quantity. raise quantity if want.

$qty = 2; wc()->cart->add_to_cart($productid,$qty,0,null,null); 

Comments

Popular posts from this blog

java - Run spring boot application error: Cannot instantiate interface org.springframework.context.ApplicationListener -

python - pip wont install .WHL files -

Excel VBA "Microsoft Windows Common Controls 6.0 (SP6)" Location Changes -