对于我的一个项目,我试图在自定义页面模板上使用预定义的古腾堡块。我正在使用Block Lab WP插件来创建自定义的Gutenberg块。但是当我在页面模板上使用时,那是行不通的。
是否可以在页面模板上使用古腾堡块?这样当有人更改页面模板时可以立即使用吗?
预先感谢
答案 0 :(得分:1)
您需要使用Custom Post Type为块。它的作用是您可以在其中预定义的模块中注册自己的帖子模板。我相信您正在寻找的是。这是一个示例-
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' );
此函数注册CPT并通过模板选项,指定其中包含哪个块。可以锁定(不允许外部块),松散锁(允许一定的块)或允许其它块将被插入为好。
答案 1 :(得分:1)
Gutenberg尚不支持实际页面模板。
但是我为此也做了一个小插件来研究这个想法。 您可以下载并进行测试。 但是,它适用于了解古腾堡(一点儿)并且可以修改/扩展此插件的开发人员。并且肯定还没有准备好投入生产。
它将创建一个CPT“页面模板”,您可以在其中定义页面模板块。 在“页面”中时,创建一个新页面,然后从(新)右上角的侧边栏中选择页面模板。