settings_schema.json

The settings_schema.json file controls the organization and content of the Theme settings area of the theme editor.

You can reference any available setting values in Liquid through the global settings object.

Basic format

You can create various categories of settings using the basic format below. The name attribute determines the category, and the settings attribute is an array of the associated settings:

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 bottom of the theme editor sidebar:

To add this metadata, you can include a theme_info object in the settings_schema.json file. This object must include the following attributes:

  • name - The value of this attribute must be theme_info
  • theme_name - The name of the theme
  • theme_author - The author of the theme
  • theme_version - The version number of the theme
  • theme_documentation_url - A URL where merchants can find documentation for the theme
  • theme_support_email - An email address that merchants can contact for support for the theme
  • theme_support_url - A URL where merchants can find support for the theme

If a theme has no settings_schema.json file

If a theme has no settings_schema.json file, then you can do one of the following:

Generate automatically

You can automatically generate the settings_schema.json file in one of two ways:

Create from scratch

If you create the file from scratch as part of the initial theme development process, then make sure you do the following:

  • Save the file in the config directory
  • Check that your settings are formatted correctly