Online store - Add dynamic checkout buttons to products

Highlighted
Community Manager
Community Manager
479 27 586

You can update the product form on the product page template to support dynamic checkout buttons. If your theme has a home page featured product section, then you can update the product form in that template as well.

 

You can learn more about dynamic checkout buttons in Adding dynamic checkout buttons to your online store.

 

 

To update the product form to support dynamic checkout buttons

 

 

  1. From your Shopify admin, go to Online Store > Themes.
  2. Find the theme you want to edit, and then click Actions > Edit code.
  3. In the Sections directory, open one of the following files:

    • Click product-template.liquid to update the product page template. In some themes, the product template has a different filename. In some cases, the product form is included in a file in the Snippets directory, and has a name like product-form.liquid.
    • Click featured-product.liquid to update the home page featured product section.

  4. Find the product form by searching for <form action="/cart/add". Take note of any attributes that the form has, such as a class or an id. You can include these attributes in the updated product form that you will create in the next step. If you don't include the attributes, then the styling or behavior of the form might be affected.
  5. Delete the entire opening <form> tag, and replace it with the following Liquid:

    {% form 'product', product %}

     

    To include the attributes from the old form, add them to your updated form by using the following syntax:

    {% form 'product', product, id: "oldID", class: "old-class" %}

     

    To learn more about modifying form attributes, see the Liquid reference for form tags.

  6. Find the closing </form> tag by searching for </form>.
  7. Replace the closing </form> tag with the following Liquid:

    {% endform %}

     

  8. Find the Add to cart button by searching for an input or a button tag that has the attribute type="submit".
  9. On a new line below the Add to cart button, add the following Liquid:

    {{ form | payment_button }}

     

  10. Click Save.

    Your modified product form should look something like this example code:

    {% form 'product', product %}
      ...
      <button type="submit">Add to cart</button>
      {{ form | payment_button }}
      ...
    {% endform %}

     

TyW | Community Manager @ Shopify
 - Was my reply helpful? Click Like to let me know! 
 - Was your question answered? Click Accept as Solution 

2 Likes
Highlighted
New Member
1 0 0

Thank you! :)

0 Likes
Highlighted
Shopify Partner
8 0 2

Super helpful! you can add custom attributes as well!

https://shopify.dev/docs/liquid/reference/tags/theme-tags/#modifying-form-attributes

{% form "product", product, id: "newID", class: "custom-class", data-example: "100" %}
0 Likes
Highlighted
New Member
2 0 1

Hi Bryan,

Is it possible to change the function of buy now button to (add to cart then redirect to checkout) ?

0 Likes
Highlighted
New Member
1 0 0

Is there a way to add one more button like 'Buy Now', to perform some custom action??

0 Likes