In case you have very long single product pages, it may be helpful to show the Add to Cart form at the bottom of the page or even inside the description tab.
Thankfully this is pretty easy and only requires one line of code. The only thing that you may want to change is the hook name, which defines the position of the button, and the priority, which defines the relative position of the element in case there are other ones “hooked” onto the same hook.
In this example, we will place the button at the very bottom of the page, below tabs, upsells and related products. Enjoy!

PHP Snippet: Display a Second Add to Cart Button @ WooCommerce Single Product Page
Notes:
- “woocommerce_after_single_product_summary” places the button after the product summary. For the whole list of WooCommerce single product page hooks, check here
- “9999” places the button at the very bottom of the “woocommerce_after_single_product_summary” position. If you check again the visual hook guide for the single product page, you will see that tabs are hooked to “woocommerce_after_single_product_summary” with priority = “10”, upsells = “15” and related products = “20”. We could have used “21”, and that would have still worked. I picked “9999” to be almost sure I place the button at the very bottom in case other plugins output additional content below the related products
/**
* @snippet Add Another Add to Cart Form @ Single Product
* @how-to businessbloomer.com/woocommerce-customization
* @author Rodolfo Melogli, Business Bloomer
* @compatible WooCommerce 7
* @community https://businessbloomer.com/club/
*/
add_action( 'woocommerce_after_single_product_summary', 'woocommerce_template_single_add_to_cart', 9999 );
Hi, thank you for this. It works perfectly. It however also duplicates the contents of the short product description. What would be the way around this please?
Thanks for your comment Aurelie! This is not possible, I’m only calling the function that prints the button and nothing else, so the problem is elsewhere