Best way to define custom global metafields for my client shop

Topic summary

A Shopify developer seeks the best approach for creating global, client-editable settings (like default images, shipping policy text, mega menu images) outside of theme settings.

Key constraints:

  • Settings must be accessible throughout the shop
  • Client needs easy admin access to modify them
  • Should NOT require navigating to theme customization area
  • Cannot use the Brand page (no custom metafield support)

Attempted solution:
Added metafields to the SHOP object via custom app and GraphQL, but discovered these aren’t accessible in the admin’s custom metadata section.

Suggested solution:
Another user recommends using metaobjects, which can be accessed in Liquid templates and are manageable through the admin interface. The developer requests clarification on implementation details.

Status: Discussion remains open with the developer seeking more specific guidance on metaobject implementation for global settings.

Summarized with AI on October 28. AI used: claude-sonnet-4-5-20250929.

Hi all,

I’m a shopify developer, currently developing a theme for my client.

I have no problem to define custom metaobjects and metafields attached to products, collections or objects like that, but what is the best way to define metafields that will be used as global settings for the entire shop ? And i need these settings to be accessible for my client to modify.

I’m thinking of settings like “default image for something”, “default text for shipping policy”, “default image to display on the right on the mega menu”, etc… In fact, these kind of settings could appear in the “brand” page, but i don’t think i can add custom metafields to this page, right ?

I tried to add metafields to the SHOP object (via a custom app and GraphQL) and it works, but there is no way to modify these settings via the admin ! The SHOP object is not available in the custom metadata section…

Also, i don’t want it to be “theme settings”, because i don’t want my client to have to go in the “theme” part of the admin.

Any help or idea will be welcomed.

Thanks

Hi @fclerc
Metaobject is best suited for your case
Thanks!

Hi,

Thank you for your answer.

But what do you mean exactly ? I understand the use of metaobjects, but how can it help me define an object accessible globally in liquid to store shop settings and that can be modified by my client ?

Thanks

You can access in liquid like this: https://shopify.dev/docs/api/liquid/objects/metaobject
You just need to explore some of these basic terms and then it will be very handy to use