Liquid, JavaScript, themes, sales channels
So the new shopify native metafields are awesome, and I see that it allows me to create a data type of JSON, but I'm having trouble accessing the JSON data in my theme code with liquid....
I created a new metafield called product.metafields.my_fields.foobar, and on a product I gave it a value of:
{
"color": "blue",
"age": "12",
"size": "large"
}
In my product.liquid code, {{.product.metafields.my_fields.foobar }} will successfully print { "color": "blue", "age": "12", "size": "large" } in the browser (as a string) but...
How can I access individual items? For example, how can I just print "blue" in the browser? I tried {{product.metafields.my_fields.foobar.color }} and {{product.metafields.my_fields.foobar[color]}} but those print nothing.
I've used the "accentuate" app in the past and the above method works perfectly. How can I achieve this with the shopify native metafields??
I figured it out, the answer is:
Thank you @andrewNet
I too wasn't able to access properties like the old JSON metafield type.
This resolved it for me as well.
{{ object_type.metafields.namespace.key.value.....[now you can access your json object here]}}
Thank you very much just helped a lot
You can refer https://shopify.dev/api/liquid/objects/metafield#access-metafields
Hope it helps!
Also, if you want to use a liquid variable as the key, you can pass it inside square brackets: {{ product.metafields.namespace.foobar[someVariable] }}
Portrait of Stephen positioned next to an image of planet Earth, with the Stephen's World ...
By JasonH Mar 18, 2024Digital marketers and app developers have tracked activity in apps and websites for yea...
By Ollie Mar 13, 2024February was an exciting month with Shopify Editions, informative webinars, and more! F...
By JasonH Mar 7, 2024