WooCommerce : 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

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top