寻找古腾堡区块的所有可用选项

时间:2019-04-24 作者:kevinckc

我正在尝试(&A);学习为古腾堡构建自定义块,但花了几个小时搜索“可用选项”的完整列表。也许我被忽视了。。。

参考:Template and Block

例如placeholder &;align 还有其他选择吗?

function myplugin_register_book_post_type() {
    $args = array(
        \'public\' => true,
        \'label\'  => \'Books\',
        \'show_in_rest\' => true,
        \'template\' => array(
            array( \'core/image\', array(
                \'align\' => \'left\',
            ) ),
            array( \'core/heading\', array(
                \'placeholder\' => \'Add Author...\',
            ) ),
            array( \'core/paragraph\', array(
                \'placeholder\' => \'Add Description...\',
            ) ),
        ),
    );
    register_post_type( \'book\', $args );
}
add_action( \'init\', \'myplugin_register_book_post_type\' );
例2:那些是空的array() 应该允许存储一些选项,对吗?

$template = array(
    array( \'core/paragraph\', array(
        \'placeholder\' => \'Add a root-level paragraph\',
    )),
    array( \'core/columns\', array(), array(
        array( \'core/column\', array(), array(
            array( \'core/image\', array() ),
        )),
        array( \'core/column\', array(), array(
            array( \'core/paragraph\', array(
                \'placeholder\' => \'Add a inner paragraph\'
            )),
        )),
    ))
);

1 个回复
最合适的回答,由SO网友:Sally CJ 整理而成

选项1浏览block-library package 在Gutenberg的GitHub存储库中,并在名为block.json 特定块的。例如,对于core/image 块,您可以找到元数据(例如,所有可用/支持的属性)here:

https://github.com/WordPress/gutenberg/blob/master/packages/block-library/src/image/block.json
因此,URL格式基本上是:

https://github.com/WordPress/gutenberg/blob/master/packages/block-library/src/{name}/block.json
在哪里{name} 是没有core/ 部分

选项2(PHP)

用于使用PHP/WordPress函数注册的块register_block_type, 可以使用此选项获取块属性:

$block = WP_Block_Type_Registry::get_instance()->get_registered( \'core/latest-posts\' );
$attrs = $block ? $block->get_attributes() : [];
var_dump( $attrs, $block );

选项3(JavaScript)

用于使用JavaScript函数注册的块wp.blocks.registerBlockType, 可以使用此选项获取块属性:

var block = wp.blocks.getBlockType(\'core/gallery\');
var attrs = block ? block.attributes : {};
console.log( attrs, block );

相关推荐