Pawan Kumawat

When adding product to cart and then refreshing the page it adds product again to cart.

Add to cart duplicates products on refresh page?

 

Generally in WooCommerce clicking on Add-to-Cart and it successfully add the product and display the message that the product is added. And on refreshing the page and message did not disappear and it adds the product once more to cart. And how many times am refreshing the page it is adding the product again to cart.

 

This is because when add to cart process is not executed using ajax , than it is executed by query string.

When Adding product to cart using query string, URL becomes something like this”?add-to-cart=1234&quantity=1” so when we refresh the page, this will again execute and product will again add to cart. So to Remove This Issue We have To redirect the page after add to cart.

 

There is a option in WooCommerce that lets you redirect customers directly to the cart when they’ve added a new product to their cart. If you want to redirect customers to lets say a checkout page, you can do that by adding a small code to functions.php.

 

For This You can use 'woocommerce_add_to_cart_redirect' hook.

 

function CustomAddToCartRedirect() {
  $url = WC()->cart->get_checkout_url();
  return $url;
}
add_filter(‘woocommerce_add_to_cart_redirect’,‘CustomAddToCartRedirect’ );

 

If You want redirecting user to same page you can do that by adding a small code to functions.php.

 

function CustomAddToCartRedirect() {
  $url=”//”.$_SERVER[‘HTTP_HOST’].$_SERVER[‘REQUEST_URI’];
  return $url;
}
add_filter(‘woocommerce_add_to_cart_redirect’,‘CustomAddToCartRedirect’ );

 

If You want redirecting user to Any Other Custum page you can do that by adding a small code to functions.php.

 

function CustomAddToCartRedirect() {
  $url = get_permalink(123); // 123 is the page ID here
  return $url;
}
add_filter(‘woocommerce_add_to_cart_redirect’,‘CustomAddToCartRedirect’ );

 

Enjoy

Categories

Related Blogs

How to add custom order status in WooCommerce

To add a custom order status and customize its email template using `register_post_status`, `wc_order_statuses`, `woocommerce_email_actions`, and `woocommerce_email_classes`, you can follow these steps:

How To Limit Search To Post Titles?

I added a text field to the posts filter form and I use s= parameter to make the search work. But how to search only in the title of the post (not in the content)? how to limit search to post titles? How to search only by Post Title?