August 3rd, 2022
When setting a metafield to a type “product” you would be forgiven for thinking it would return a product object when accessed.
Unfortunately, this is Shopify so it returns a String GID.
It took me much longer than I would like to admit to figure this out. It was the reason I couldn’t access any of the product’s variables.
To access the object replace the following:
card_product: product.metafields.namespace.featured_product
with
card_product: product.metafields.namespace.featured_product.value
or use the all products array:
card_product: all_products[product.metafields.namespace.featured_product]
Appending .value loads the object rather than returning Shopify’s gid:// string.
Alternatively, we can use the all_products array to access the products by GID.
For anyone googling: This unfortunately does not seem to work for field type “customer”, customer.value still returns only gid
I will look into this and see if I can find any alternative ways to access fields on the customer object. Are you using a metafield that’s a customer?
This is fantastic, thank you
thanks it really helped
For sure, glad to hear it!
Hi,
Where do you change that in Dawn theme?
Wherever you want, anywhere you need a products metafield to be outputted