All things Shopify and commerce
We are migrating products from our client's online store to Shopify using the latest API version 2023-10. The product attributes are migrated as metafields, and we just noticed a serious problem with metafield definition and access settings since the API version 2023-01 to 2023-10.
There are some issues/limitations:
Shopify developers, e-merchants, web agencies and developers should take note of thess issues. I hope you will find out a comprehensive solution.
Solved! Go to the solution
This is an accepted solution.
Hello,
You should be able to create a metafield definition in a non app reserved namespace (e.g. "custom") as long as you are not setting a value for the access input. If you do not use a reserved namespace, the merchant and other apps should be able to edit the definition and set metafield values.
To learn more visit the Shopify Help Center or the Community Blog.
This is an accepted solution.
Hello,
You should be able to create a metafield definition in a non app reserved namespace (e.g. "custom") as long as you are not setting a value for the access input. If you do not use a reserved namespace, the merchant and other apps should be able to edit the definition and set metafield values.
To learn more visit the Shopify Help Center or the Community Blog.
How should I go about creating a definition in a "custom" namespace with storefront access??
EDIT/UPDATE:
So it seems that creating the namespace with "$app:custom" is the answer
That is correct. Prefixing a namespace with "$app:" produces a metafield definition in a reserved namespace that is owned by the app that created it. The owning app has full control over the definition including the definition's admin and storefront access settings.
Apps can also create non-reserved namespace metafields (e.g. "custom") but cannot set storefront or admin access. In the 2024-01 API release and beyond, storefront access for non-reserved namespace metafields can only be set from within the Admin.
To learn more visit the Shopify Help Center or the Community Blog.
Do you know we will be able to create non-reserved namespace metafields for any owner type?
I would like to create a shop metafield as a non-reserved namespace metafields, but it seems like there's no way to currently define it from the Shopify Admin.
Shop metafields can be created using the metafieldDefinitionCreate Admin API mutation with an ownerType = SHOP.
Shop metafields cannot be created through the Admin interface.
To learn more visit the Shopify Help Center or the Community Blog.
Within an app, I attempted to create a metafield definition with the following settings:
Hi. Is there a way to access a product image metafield from the storefront api and liquid?
I defined it with [storefront] => PUBLIC_READ access, but I can't find any query to access it.
The image object in the back end include metafields, but not the one in the front end.
Thanks
A non app reserved namespace with no access input is the best solution 👍.
*Note: if anyone is trying this solution, remember to use the API stable versions, as it doesn't work with the "Unstable" versions.
Thank you so much, John!
hello
By investing 30 minutes of your time, you can unlock the potential for increased sales,...
By Jacqui Sep 11, 2024We appreciate the diverse ways you participate in and engage with the Shopify Communi...
By JasonH Sep 9, 2024Thanks to everyone who participated in our AMA with 2H Media: Marketing Your Shopify St...
By Jacqui Sep 6, 2024