settings_schema.json file controls the organization and content of the Theme settings area of the theme editor. All setting selections in the theme editor are saved in settings_data.json.
settings_schema.json file is located in the
config directory of the theme:
settings_schema.json file is an array of objects that represent setting categories. Each object needs to have the following attributes:
||The name of the category of settings.||Yes|
||An array of associated settings.||Yes|
settings_schema.json file should follow the following basic format:
settings_schema.json file is a JSON file, so all content must be valid JSON. Additionally, make sure you follow the appropriate syntax for your desired setting.
When working with the
settings_schema.json file, familiarize yourself with the following:
Setting typesAnchor link to section titled "Setting types"
There are two categories of settings:
|Input settings||Settings that can hold a value, and are configurable by merchants.|
|Sidebar settings||Settings that can’t hold a value, and aren’t configurable by merchants. They’re informational elements that can be used to provide detail and clarity for your input settings.|
Access settingsAnchor link to section titled "Access settings"
Theme settings can be accessed through the settings object. To learn more about the syntax and considerations, refer to Access settings.
Add theme metadataAnchor link to section titled "Add theme metadata"
As a theme author, you can include additional metadata for your theme in the Theme actions menu of the theme editor. This menu appears at the left of the theme editor top bar:
To add this metadata, you can include a
theme_info object in the
settings_schema.json file. This object must include the following attributes:
||The value of this attribute must be
||The name of the theme.||Yes|
||The author of the theme.||Yes|
||The version number of the theme.||Yes|
||A URL where merchants can find documentation for the theme.||Yes|
||An email address that merchants can contact for support for the theme.||See note|
||A URL where merchants can find support for the theme.||See note|