I have created a button snippet and want to integrate to custom liquid block in product page!

I have created a new button snippet called “personalize-button.liquid”. Inside the liquid, below code is inserted:

Personalized

However, I would like the ‘personalize button’ to be shown conditionally on the product page: only when the product’s metafield called "personalize’ is filled. So, I created the custom liquid block in product page , with below code entered:

{% if product.custom.personalize_url != “blank” %} {% include ‘personalize-button’ with button_text: ‘Personalize’%}{% endif %}

but there are error msg pop up.

I hope someone can help and instruct me where is the problem.

Hi @MattLo

You can add code condition like this

{% if product.metafields.personalize.value != blank %}
  {% include 'personalize-button' with button_text: 'Personalize'%}
{% endif %}

Note: must check you have metafield with this name “personalize”

The error you encountered is likely due to the incorrect usage of the include statement. The correct syntax for passing variables to an included snippet is slightly different. Here’s the corrected code for your product page:

{% if product.metafields.custom.personalize != blank %}
  {% include 'personalize-button' with button_text: 'Personalize' %}
{% endif %}

Make sure to replace custom with the appropriate namespace for your metafields.

In your “personalize-button.liquid” snippet, you can access the button_text variable using the include object. Here’s an updated version of the snippet:


not working

not working too

@MattLo

Can you share the screenshot of error.

u mean the above code add to custom liquid block in product page?

please guide to create a new functional button block, thx