在WordPress 5.5中,区块编辑器Gutenberg引入了一个称为块模型(Block Patterns)的新概念。目的是允许用户构建和共享预定义的块布局,从而可以更轻松地进行插入和调整。Z B ^ h P w ( f

您可以在块插入器上找到已注册的块模型,然后像其他e : H 3 #任何块一样将其添加到文章/页面中。

注册块模型

WordPress 5.5附带了许多内置的块模型,但是第三方插件和主题也可以注册其他块模型或U [ s & J删除现有的块模型。

要注册自定义块模型,可以调用register_block_pattern函数以将模型名称作为第一个参数,将描述模型属性的z 2 0 z 3 V s P {数组作为第二: % R I u个参数。块模型的属性c l i G S M u包括标题、描述、分类、可能的其他关键字以及模型的内容。

  1. functionmy_plugin_register_block_patterns(){
  2. register_block_pattern(
  3. ‘my-plugin/my-aw5 B c ,esome-pattern’,
  4. array(
  5. ‘title’=>__(‘Twobuttons’,‘my-plugin’),
  6. ‘description’=>_x(‘Twohorizontalbuttons,thD , \eleftbuttonisfilledin,andtherightE Q b T 4 %buttonisoutlined.’,‘Blockpatterndescription’,‘my-plugin’),
  7. ‘categories’=>array(‘buttons’),
  8. ‘content’=>“<!–wp:buttons{\”align\”:\”center\H _ / q {”}–>\n<divclass=\”wp-block-buttonsaligncenter\”><!–wp:button{\”backgroundColor\”:\”very-dark-gray\”,\”borderRadius\”:0}–>\n<divclass=\”wp-block-button\”><aclass=\”wp-block-button { C pn__linkhas-backgroundhas-# D ` \ [ tvery-dark-gray/ y [ U _-background-colorno-{ r u g Kborder-radius\”>”.esc_html__(‘ButtonOne’,‘my-plugin’).“</a></div>\n<!–/wp:button–>\n\n<!–wk r |p:butth P e W w ] D Xon{\”textColor\”:\”very-dax n % H 2rk-gray\”,\”borderRadius\”:0,N c M & 2 z I 4 m\”className\”:\”is-style-outline\”}–>\n<divclass=\”wp-block-buttonis-style-outline\”><aclass=\”wp-block-button__linkhas-text-= 2 I 7 Ycolorhas-very-dark-gray-colorno-border-radius\”>”.esc_html_– u M n_(‘ButtonTwo’,‘my-plugin’).“</a&gI ] } [ Y Vt;</div>\n<!–/wp:button–></div>\n<!–/wp:buttons–>”,
  9. )
  10. );h T H g
  11. }
  12. add_action(‘init’,‘my_plugin_register_block_patterns’);

注销块模型

unregister0 } 6 P : k + ) p_block_pattern允许取消使用先前通过register_block_pa3 L g qttern注册的模型。

该函数的参数是模型的注册名称。

以下代码示例注销了名为“my-plugin/my-awesome-pattern”的模型:

  1. unregister_block_pattern(‘my-plugin/my-awesome-pattU p x 1ern’);

注销所有核心块模型

尽管WordPr5 ? E 5 & [ T N {ess内置了许多块模型,? G % : & 7 H但主题作者可能希望注销内置的块模型并提供自己的p t *

您可以通过删除core-block-patterns主题支持标志来实现。

  1. remove_theme_support(‘core-block-patterns’);

块模型分类

可以使用分类对块模式进行分组。4 = J l &块编辑器带有捆绑的类别,您可以在自定义块模式中使用它们。您也可以注册自己的模式类别。

注册块模型分类

register_bly O = F z & tock_pattern_category函数将分类名称作为第一个参数,B $ j Y x / 8将描述分类属性的数组作为第二个参数。

模型分类的属性包括:
label(必需):供人类阅读的分类名称。

  1. register_block_h [ @ 1pattern_category(‘hero’,array(‘label’=– F @ t c 6 ! &>__(‘Hero’,‘myg A T 6 *-plugin’)));

注销块模型分类

unregister_block_pattern_category允许注销块模型分类。

该函数的参数是要取消注册的模型分类的名称。

以下代码示例注销了名为“hero”的分类:

  1. unregister_block_pattern_category(‘hero’);

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注