我已经搜索了一天,但似乎还没有找到正确的文档,说明在尝试用php配置CPT块模板时可以传递给核心组件的参数。这就是我所拥有的,但我想通过嵌套按钮和自定义html等进一步实现这一点。但我找不到我需要的文档。
\'template\' => array(
array( \'core/columns\', array(), array(
array( \'core/column\', array("width" => "60"), array(
array( \'core/image\', array() ),
) ),
array( \'core/column\', array("width" => "40"), array(
array( \'core/image\', array() ),
array( \'core/heading\', array(
\'placeholder\' => \'Add a inner paragraph\'
) ),
) ),
)
)
找到了在JSX中创建定制块所需的一切,但blegh还没有时间学习JSX的神奇方法,我真的不想要新块,只想要现有块作为模板绑定到自定义帖子类型。
一个很好的例子来说明我的问题,这个人是如何找到关于如何设置此模板列宽度的答案的。
How to set column widths in a CPT block template?
这个人是如何找到这个答案的?他们是否必须深入到组件的JS脚本中并解决它,或者是否有一些关于这方面的文档,或者我是否遗漏了一些东西。
任何帮助都将不胜感激。
最合适的回答,由SO网友:Tom J Nowell 整理而成
您找不到该文档,因为它不存在。它不存在,因为它不是这样工作的,需要大量的重复才能建立起来。
所以,要想弄清楚需要放什么,先弄清楚Javascript/JSON中的内容,然后将其转换为PHP。
模式为:
[
\'block name\'
[
\'parameter\': \'value\'
.... etc
],
[ .... child blocks ... ]
]
这就解释了为什么没有明确提到PHP这些参数的文档。这些参数不是在PHP中定义的,它们是由块本身定义的,块是在javascript中构建的。因此,您找不到PHP块模板中使用的参数列表,因为没有参数列表,而且创建一个也没有意义。事情不是这样的。
因此,在块编辑器中构建块,查看它们的参数,然后用PHP编写它们。
一个很好的例子来说明我的问题,这个人是如何找到关于如何设置此模板列宽度的答案的。
通过在编辑器中检查块,查看块的参数及其值。