Skip to content
Log in

Store design objects

On this page

Use this article to find the object behind a part of the storefront. It is an inventory rather than an explanation.

:::note For how these records work together, which one controls a given part of the page, and what to change to affect it, read how stores, themes, and design elements relate. That article covers the model; this one lists the objects and their API names. :::

Four chains to know

The domain is not one hierarchy. It is four short chains that all start at the Store.

Chain Records
Markup Store → ThemeTemplates, Assets, Variables, Locales
Content PageContent Block PageContent Block → nested blocks
Navigation Store → MenuMenu Items
Injection Store → Style Block, Script Block

Two things about that table are worth stating plainly, because they are what people get wrong:

  • A content block is never on a page directly. The join record is what places it, and it carries the order. See junction objects.
  • The store, not the theme, decides most configuration. The theme owns markup. Currency, checkout behavior, domain, and which menus to use are on the Store record.

Objects in this domain

Object API name Purpose
Store s_c__Store__c The hub. Holds branding, currency, checkout settings, domain, and which theme and menus to use
Store Group s_c__Store_Group__c Groups stores that share configuration or catalog
Store Variable s_c__Store_Variable__c A named value a theme can read, for settings without a code change
Store Role s_c__Store_Role__c A named role used to grant staff permissions on a store
Web Domain s_c__Web_Domain__c A domain or path a store is served from
Route Mapping s_c__Route_Mapping__c Maps a URL path to the page or record that answers it
Locale Translation s_c__Locale_Translation__c A translated string for one locale
Theme s_c__Theme__c A named set of templates, assets, variables, and locales. A store points at one
Theme Template s_c__Theme_Template__c One Liquid template, keyed by the page type or block it renders
Theme Asset s_c__Theme_Asset__c A file the theme serves, such as CSS, JavaScript, or a font
Theme Variable s_c__Theme_Variable__c A value the theme reads, set per theme rather than per store
Theme Locale s_c__Theme_Locale__c Theme-level translations for one locale
Page s_c__Page__c A content page, with its slug, SEO fields, and body
Page Tag s_c__Page_Tag__c Attaches a tag to a page
Related Page s_c__Related_Page__c Links two pages so one appears as related on the other
Content Block s_c__Content_Block__c A reusable piece of page content, with a template and its own fields
Content Block Page s_c__Content_Blocks_Pages__c Places a content block on a page, in order
Content Block Product s_c__Content_Blocks_Products__c Places a content block on a product
Content Block Article s_c__Content_Blocks_Articles__c Places a content block on an article
Content Block Product Category s_c__Content_Blocks_Product_Categories__c Places a content block on a category
Content Block Child s_c__Content_Blocks_Children__c Nests one content block inside another
Menu s_c__Menu__c A named navigation menu. A store points at one for its header and one for its footer
Menu Item s_c__Menu_Item__c One entry in a menu, linking to a page, category, product, or URL
Style Block s_c__Style_Block__c CSS injected into the storefront, scoped to a store
Script Block s_c__Script_Block__c JavaScript or tracking markup injected into the storefront

Where it meets other domains

Almost every relationship in this domain runs through a join record, more so than anywhere else in the schema. Junction objects is worth reading before you query or import here.

Was this article helpful?

Was this article helpful?