主题 API
主题管理的完整 API 命令。56 个 API 命令和 6 个快捷命令。
本地开发工作流(init、serve、pull、push、package、share、env)参见 theme。
所有主题 API 命令共享以下参数:
| 参数 | 短参 | 说明 |
|---|---|---|
--params | 路径/查询参数(JSON 格式) | |
--data | 请求体(JSON 格式) | |
--jq | -q | jq 表达式过滤输出 |
--dry-run | 预览请求,不实际执行 |
theme_id 等路径参数一律放在 --params 中。运行 shoplazza schema themes.<命令>(例如 shoplazza schema themes.file.update)可查看命令的参数和请求体。
themes
shell
shoplazza themes list
shoplazza themes get --params '{"theme_id":"123"}'
shoplazza themes rename --params '{"theme_id":"123"}' --data '{"name":"New name"}'
shoplazza themes duplicate --data '{"copy_theme_id":"123","copy_theme_name":"My theme copy"}'
shoplazza themes upgrade --params '{"theme_id":"123"}'
shoplazza themes publish --params '{"theme_id":"123"}'
shoplazza themes delete --params '{"theme_id":"123"}'
shoplazza themes task --params '{"task_id":"123"}'
themes file
管理主题文件。
shell
shoplazza themes file tree --params '{"theme_id":"123"}'
shoplazza themes file get --params '{"theme_id":"123","type":"layout","location":"theme.liquid"}'
shoplazza themes file create --params '{"theme_id":"123"}' --data @file.json
shoplazza themes file update --params '{"theme_id":"123"}' --data @file.json
shoplazza themes file delete --params '{"theme_id":"123"}' --data '{"type":"assets","location":"old.css"}'
shoplazza themes file rename --params '{"theme_id":"123"}' --data '{"doc":{"type":"assets","location":"a.css","new_location":"b.css"}}'
create 和 update 的 file.json 内容形如 {"doc":{"type":"assets","location":"new.css","content":"..."}}。
themes version
管理主题版本。
shell
shoplazza themes version list --params '{"theme_id":"123","type":"layout","location":"theme.liquid"}'
shoplazza themes version records --params '{"theme_id":"123"}'
shoplazza themes version get --params '{"theme_id":"123","version_id":"456"}'
themes session
在编辑会话中操作主题:读写文件、批量编辑、全局配置、卡片库、冲突检查,以及保存为草稿。
shell
shoplazza themes session create --params '{"theme_id":"123"}'
shoplazza themes session get-file --params '{"oseid":"<oseid>","doc_id":"<doc_id>"}'
shoplazza themes session update-file --params '{"oseid":"<oseid>","doc_id":"<doc_id>"}' --data @file.json
shoplazza themes session batch-ops --params '{"oseid":"<oseid>","doc_id":"<doc_id>"}' --data @ops.json
shoplazza themes session get-config --params '{"oseid":"<oseid>","doc_id":"<doc_id>"}'
shoplazza themes session update-config --params '{"oseid":"<oseid>","doc_id":"<doc_id>"}' --data @settings.json
shoplazza themes session card-list --params '{"oseid":"<oseid>"}'
shoplazza themes session check --params '{"oseid":"<oseid>"}'
shoplazza themes session promote --params '{"oseid":"<oseid>"}'
themes section
编排页面上的卡片。
shell
shoplazza themes section cards --params '{"theme_id":"123"}'
shoplazza themes section list --params '{"oseid":"<oseid>","doc_id":"<doc_id>"}'
shoplazza themes section get --params '{"oseid":"<oseid>","doc_id":"<doc_id>","section_id":"<section_id>"}'
shoplazza themes section set-props --params '{"oseid":"<oseid>","section_id":"<section_id>"}' --data @props.json
shoplazza themes section remove --params '{"oseid":"<oseid>","section_id":"<section_id>"}' --data '{"doc_id":"<doc_id>"}'
themes block
管理卡片内的 block 和 AI 卡片,并列出公共卡片。
shell
shoplazza themes block list
shoplazza themes block add --params '{"oseid":"<oseid>","section_id":"<section_id>"}' --data @block.json
shoplazza themes block set-props --params '{"oseid":"<oseid>","section_id":"<section_id>"}' --data @props.json
shoplazza themes block remove --params '{"oseid":"<oseid>","section_id":"<section_id>"}' --data @block.json
shoplazza themes block create-gen --params '{"oseid":"<oseid>"}' --data @card.json
shoplazza themes block get-gen --params '{"oseid":"<oseid>","type":"blocks/gen_1a0d523"}'
shoplazza themes block update-gen --params '{"oseid":"<oseid>"}' --data @card.json
shoplazza themes block delete-gen --params '{"oseid":"<oseid>","type":"blocks/gen_1a0d523"}'
shoplazza themes block revert-gen --params '{"oseid":"<oseid>"}' --data '{"revert_id":"<revert_id>"}'
themes template
管理绑定到商品、商品专辑和页面的自定义模板。
shell
shoplazza themes template list --params '{"theme_id":"123"}'
shoplazza themes template create --params '{"theme_id":"123"}' --data @template.json
shoplazza themes template update --params '{"theme_id":"123","template_id":"456"}' --data @template.json
shoplazza themes template delete --params '{"theme_id":"123","template_id":"456"}'
themes app
管理店铺前台的应用嵌入,并列出应用扩展卡片。
shell
shoplazza themes app list
shoplazza themes app extensions
shoplazza themes app enable --params '{"oseid":"<oseid>"}' --data @embed.json
shoplazza themes app disable --params '{"oseid":"<oseid>"}' --data @embed.json
themes market
浏览主题市场,并把主题安装到店铺。
shell
shoplazza themes market list
shoplazza themes market install --params '{"remote_theme_id":"123"}'
themes pb
页面搭建器(page builder)相关操作。
shell
shoplazza themes pb list-blocks --params '{"event_type":"page-builder","source_ids":"<source_id>"}'
shoplazza themes pb save-block --data @block.json
shoplazza themes pb save-template --data @template.json
shoplazza themes pb delete-template --params '{"template_id":"456"}'
shoplazza themes pb summary --data @canvas.json
shoplazza themes pb update --data @canvas.json
快捷命令
用于读取和编辑模板页面的快捷命令。它们有各自的参数,详见 shoplazza themes <快捷命令> --help。
| 快捷命令 | 说明 |
|---|---|
themes +page | 读取模板页面:按渲染顺序列出 section,并给出可直接复制的 block 目标路径 |
themes +edit | 在一个编辑会话中对模板页面批量执行编辑操作 |
themes +preview | 输出主题(可指定编辑会话)的店铺前台预览链接 |
themes +card-schema | 读取最多 10 个可添加卡片的 settings 和 blocks schema |
themes block +get | 读取生成的 block:文件信息、引用次数和放置位置 |
themes block +edit | 写入生成的 block 文件并放到模板页面上 |
shell
shoplazza themes +page --template index
shoplazza themes +edit --template index --session <oseid> --ops '[{"op":"update_slot","target":"<section_id>.blocks[0]","props":{"heading":"Summer sale"}}]'
shoplazza themes +edit --template index --session <oseid> --ops '[]' --promote
shoplazza themes +preview -t <theme_id>
shoplazza themes +card-schema -t <theme_id> --ids rich_text,collection_list