Skip to content

Theme info ​

Last updated View as Markdown
  • The first entry of config/settings_schema.json can be a theme_info object. See Theme info.
  • theme init, a theme import and a save of settings_schema.json read it. A theme export writes it.
  • theme_version must be X.Y.Z. theme_documentation_url is required, with one of theme_support_url or theme_support_email.
  • An invalid theme_info is rejected with a 422 and one message per field.
  • theme init takes --url and --inplace. See Commands.

Liquid ​

  • {% liquid %} takes one tag per line and has no closing tag. A line that starts with # is a comment. See liquid.
  • {% echo %} takes any expression and applies filters, the same as . See echo.
  • {% dump %} prints its value as JSON in a <pre> block, and applies filters.
  • {% # %} is an inline comment and renders nothing. It accepts whitespace control and several lines that each start with #.
  • replace and remove accept nil input.

Theme files ​

  • Layouts, sections and snippets must use .liquid. Templates, locales and config files must use .json.
  • config/ accepts only settings_schema.json and settings_data.json.
  • theme dev skips files whose name starts with a dot.
  • Section presets accept category. Preset blocks take type and settings.

Last updated: