{
  "name": "Slideshow",
  "tag": "section",
  "class": "slideshow",
  "limit": 1,
  "settings": [
    {
      "type": "checkbox",
      "id": "autoplay",
      "label": "Auto-rotate slides",
      "default": true
    },
    {
      "type": "range",
      "id": "speed",
      "min": 3,
      "max": 9,
      "step": 1,
      "unit": "sec",
      "label": "Change slides every",
      "default": 5
    }
  ],
  "blocks": [
    {
      "type": "slide",
      "name": "Slide",
      "settings": [
        {
          "type": "image_picker",
          "id": "image",
          "label": "Image"
        },
        {
          "type": "text",
          "id": "heading",
          "label": "Heading"
        }
      ]
    }
  ],
  "max_blocks": 10,
  "presets": [
    {
      "name": "Image slideshow",
      "category": "Image",
      "settings": {
        "autoplay": true,
        "speed": 5
      },
      "blocks": [
        {
          "type": "slide",
          "settings": {
            "heading": "Welcome to our members area"
          }
        }
      ]
    }
  ],
  "enabled_on": {
    "templates": ["index"]
  }
}
The {% schema %} tag allows you to define section attributes and settings to enable customization options in the theme editor. It defines how sections appear, behave, and what configuration options are available to users. Each section can have only a single {% schema %} tag, which must contain valid JSON using the attributes listed below. The tag can be placed anywhere within the section file, but cannot be nested inside another tag.
Note:
The {% schema %} tag is a Liquid tag. However, it doesn’t output its contents or render any Liquid included inside it.

Properties

name
string
The section title shown in the theme editor. It may be translated using t: prefix plus a valid key from schema translation files. More details can be found in Locales.
limit
number
default:"unlimited"
The maximum number of times a section can be added to a template or section group. Default is unlimited.
settings
array
An array of section-specific settings that allow users to customize the section. Each setting must have a unique ID within the section. See settings for detailed configuration.
blocks
array
An array of reusable content modules that can be added, removed, and reordered within a section. Each block must have a unique type and name. See blocks for detailed configuration.
max_blocks
number
default:"50"
The maximum number of blocks allowed in the section. Default is 50.
presets
array
Predefined section configurations that users can select when adding sections to a template. See presets for detailed configuration.
default
object
Default configuration for statically rendered sections.
enabled_on
object
Restricts a section to certain template page types and section group types. See template restrictions for detailed configuration.
disabled_on
object
Prevents a section from being used on certain template page types and section group types. See template restrictions for detailed configuration.
kiwi_extra
object
Additional settings for the theme editor
  • icon - Icon to be associated with this section type in the theme editor
  • blocks_hidden_if - Object representing a condition that hides section blocks inside the theme editor if satisfied
    • setting - Which setting of this section to check
    • value - Expected value for the block section to be hidden