settings_data.json 文件包含基于 settings_schema.json 文件中设置的主题设置值。
例如,您可以使用以下主题设置让商家选择页面背景的颜色:
settings_schema.json文件中
{
"name": "Colors",
"settings": [
{
"type": "color",
"id": "color_page_bg",
"label": "Page background",
"default": "#FFFFFF"
}
]
}
这会在 settings_data.json 中添加 color_page_bg 的条目:
...
"color_page_bg": "#FFFFFF"
...
提示
在本例中,由于使用了默认设置属性,color_page_bg 的值为 #FFFFFF。
只要在主题编辑器中更改 color_page_bg 的值,就会使用新值更新 settings_data.json。
位置
settings_data.json 文件位于主题的config目录中:
└── theme
...
├── config
├── settings_data.json
└── settings_schema.json
└── locales
Schema
settings_data.json 文件有以下父对象:
对象 | 描述 | 必须 |
current | 包含当前保存在主题编辑器中的所有设置值。 | 是 |
presets | 包含每个主题风格的对象。每个对象的格式与当前对象相同。 | 是 |
platform_customizations | 包含平台控制设置的设置值 | 否 – 如果商家使用平台控制设置,Shopify 会添加此对象 |
例如
{
"current": {
"color_page_bg": "#FFFFFF",
...
},
"presets": {
"preset-name": {
"color_page_bg": "#000000",
...
}
}
}
应用
在使用 settings_data.json 文件时,应熟悉以下概念:
- 主题样式
- 平台控制设置
- 限制
主题样式
主题样式是主题设置默认值的集合,商家可以在开始使用时通过主题编辑器轻松更改主题的总体外观和感觉。
选择一个主题样式,就会更新current对象,使其使用相关的主题样式值。不过,只有presentational settings中的值会被更新。
Presentational settings
Presentational settings是与主题的视觉方面相关的设置。Presentational settings的示例包括应用于文本的颜色和字体,或特定元素是否可见。
以下输入类型属于presentational settings。切换主题样式时,这些设置的值将被覆盖。
- 复选框
- 颜色
- 背景颜色
- 主题颜色
- 颜色组
- 字体选择器
- 数字
- 单选
- 范围
- 选择
平台控制设置
在主题编辑器中,Shopify 在主题和分区级别开放了自定义 CSS 设置。商家在主题级别添加的任何自定义 CSS 都存储在 platform-customizations 对象的 custom_css 属性中。
此设置旨在让用户无需编辑主题代码即可自定义店面的外观。作为主题开发人员,您不应添加此设置,也不应在设置后编辑此设置的值。相反,你应该使用专用的 CSS 资产和样式表Liquid标签,并通过主题设置为这些区域的 CSS 引入自定义选项。
限制
settings_data.json 文件的大小不能超过 1.5MB。
原文:https://shopify.dev/docs/themes/architecture/config/settings-data-json
发表回复