Shopify 嵌套块架构
Shopify Nested Block schema
我想知道 shopify 架构上的嵌套块是否可行。我搜索它,但找不到答案。有知道怎么做的请帮帮我
这是我的架构
"blocks": [
{
"type": "block_main",
"name": "Block Main",
"settings": [
{
"type": "text",
"id": "block-name",
"label": "Quote"
},
{
"type": "url",
"id": "block-link",
"label": "URL"
}
],
"blocks": [
{
"type": "sub_block",
"name": "Sub Block",
"settings": [
{
"type": "text",
"id": "sub-block-name",
"label": "Quote"
},
{
"type": "url",
"id": "sub-block-link",
"label": "URL"
}
]
}
]
}
]
不,这不可能。 (悲哀地)
您将不得不使用不同的逻辑来创建嵌套块。
例如,您可以使用 link_list
字段并使用链接中的文本和 URL 来填充您正在查找的信息。
我觉得这不过是数据通信的一种表现方式罢了。
为此,我总是创建一个关联数组,然后将其转换为 JSON。看这个示例 PHP 代码
//建立关联数组
$data = array("blocks" => array("type" => "block_main", "name": "Block Main","settings" => array("0" => array("type" => "text", "id": "block-name", "label": "Quote"), [1] => array(type": "url", "id": "block-link", "label": "URL")), "blocks": "type": "sub_block", "name": "Sub Block", "settings": array("0" => array("type": "text", "id": "sub-block-name", "label": "Quote"), "1" => array(type": "url", id": "sub-block-link", "label": "URL"))))
//将数组编码为json
$json = json_decode($data)
当我们发送 Post 请求时,服务器端也会发生同样的情况。它还会将嵌套的 JSON 请求呈现给关联数组,然后对数据做出反应。
这样做(例如)
{
"name": "FAQs",
"settings": [
{
"id": "dev-faq-title",
"type": "text",
"label": "FAQ Title",
"default": "Frequently Asked Questions"
}
],
"blocks":[
{
"type": "block-1",
"name": "Block 1",
"settings": [
{
"type": "text",
"id": "title",
"label": "Title"
},
{
"type": "text",
"id": "accordion-title",
"label": "Accordion Title"
}
]
},
{
"type": "block-2",
"name": "Block 2",
"settings": [
{
"type": "text",
"id": "title",
"label": "Title"
}
]
},
{
"type": "block-3",
"name": "Block 3",
"settings": [
{
"type": "text",
"id": "title",
"label": "Title"
}
]
}
],
"presets": [
{
"category": "Text",
"name": "Top Bar"
}
]
}
我想知道 shopify 架构上的嵌套块是否可行。我搜索它,但找不到答案。有知道怎么做的请帮帮我
这是我的架构
"blocks": [
{
"type": "block_main",
"name": "Block Main",
"settings": [
{
"type": "text",
"id": "block-name",
"label": "Quote"
},
{
"type": "url",
"id": "block-link",
"label": "URL"
}
],
"blocks": [
{
"type": "sub_block",
"name": "Sub Block",
"settings": [
{
"type": "text",
"id": "sub-block-name",
"label": "Quote"
},
{
"type": "url",
"id": "sub-block-link",
"label": "URL"
}
]
}
]
}
]
不,这不可能。 (悲哀地)
您将不得不使用不同的逻辑来创建嵌套块。
例如,您可以使用 link_list
字段并使用链接中的文本和 URL 来填充您正在查找的信息。
我觉得这不过是数据通信的一种表现方式罢了。 为此,我总是创建一个关联数组,然后将其转换为 JSON。看这个示例 PHP 代码
//建立关联数组
$data = array("blocks" => array("type" => "block_main", "name": "Block Main","settings" => array("0" => array("type" => "text", "id": "block-name", "label": "Quote"), [1] => array(type": "url", "id": "block-link", "label": "URL")), "blocks": "type": "sub_block", "name": "Sub Block", "settings": array("0" => array("type": "text", "id": "sub-block-name", "label": "Quote"), "1" => array(type": "url", id": "sub-block-link", "label": "URL"))))
//将数组编码为json
$json = json_decode($data)
当我们发送 Post 请求时,服务器端也会发生同样的情况。它还会将嵌套的 JSON 请求呈现给关联数组,然后对数据做出反应。
这样做(例如)
{
"name": "FAQs",
"settings": [
{
"id": "dev-faq-title",
"type": "text",
"label": "FAQ Title",
"default": "Frequently Asked Questions"
}
],
"blocks":[
{
"type": "block-1",
"name": "Block 1",
"settings": [
{
"type": "text",
"id": "title",
"label": "Title"
},
{
"type": "text",
"id": "accordion-title",
"label": "Accordion Title"
}
]
},
{
"type": "block-2",
"name": "Block 2",
"settings": [
{
"type": "text",
"id": "title",
"label": "Title"
}
]
},
{
"type": "block-3",
"name": "Block 3",
"settings": [
{
"type": "text",
"id": "title",
"label": "Title"
}
]
}
],
"presets": [
{
"category": "Text",
"name": "Top Bar"
}
]
}