区块

区块是用于构建内容并与内容交互的抽象单元。当它们组合在一起时,便会构成网页的内容。从段落、视频到站点标题,所有内容都以区块的形式表示。

区块有许多不同的形式,但也提供一致的界面。它们可以被插入、移动、重新排序、复制、创建副本、转换、删除、拖拽和组合。区块还可以被重用,从而可以跨文章和文章类型共享,和/或在同一篇文章中多次使用。如果有帮助的话,你可以将区块视为一种更优雅的简码,它为用户提供了丰富的格式化工具来编写内容。

区块的设置和内容可以在三个主要位置进行自定义:区块画布、区块工具栏和区块检查器。

可组合性

区块旨在以不同的方式进行组合。区块具有层级结构,即一个区块可以嵌套在另一个区块中。嵌套的区块及其容器分别被称为子区块(children)和父区块(parent)。例如,一个分栏(Columns)区块可以作为其每一栏中多个子区块的父区块。管理子区块使用的 API 名为 InnerBlocks。

数据和属性

区块将内容理解为属性,并且可以序列化为 HTML。为此,出现了一种新的区块语法。简而言之,区块语法是一个 HTML 注释,要么是自闭合标签,要么带有开始标签和结束标签。在主标签中,根据区块类型和用户自定义情况,可能包含一个 JSON 对象。区块的这种原始形式被称为序列化形式。

<!-- wp:paragraph {"key": "value"} -->
<p>Welcome to the world of blocks.</p>
<!-- /wp:paragraph -->

区块可以是静态的或动态的。静态区块包含已渲染的内容,以及一个用于根据更改重新渲染的属性(Attributes)对象。动态区块则在生成(渲染)文章内容时需要服务器端数据和渲染。

每个区块都包含属性或配置设置,这些属性或设置可以通过 meta 或其他可自定义的来源,从内容中的原始 HTML 中获取。

有关数据格式和数据流的更多信息。

区块转换

区块能够转换为其他区块类型。这不仅允许诸如将段落转换为标题之类的基本操作,还允许诸如将多张图片转换为图库之类更复杂的操作。区块转换适用于单个区块和多区块选择。内部区块变体也可以作为转换目标。

区块变体

对于给定的区块类型,区块变体是其初始属性的一组预定义集合。此 API 允许创建一个可以派生出多种配置的区块。变体提供了不同的界面可能性,包括在区块库中显示为全新的区块,或在插入新区块时作为预设显示。请阅读API 文档了解更多详情。

有关区块的更多信息

可重用区块

可重用区块是区块(或多个区块)的一个实例,可以在多个位置插入和编辑,并在所有位置保持同步。如果在某个位置编辑了可重用区块,这些更改将反映在使用该区块的所有文章和页面中。可重用区块的示例包括:一个由标题组成的区块,其内容和自定义颜色会出现在站点的多个页面上;以及会出现在每个页面上的侧边栏小工具。

对可重用区块的任何编辑都会出现在该区块的其他所有使用处,从而省去了在不同文章上进行相同编辑的时间。

在内部,可重用区块存储为一种隐藏的文章类型(wp_block),它们是“引用”(ref)post_id 并返回该区块的 post_content 的动态区块。

模式

区块模式是一组组合在一起的区块,共同构成一种设计模式。这些设计模式为快速构建更高级的页面和布局提供了起点,而无需逐个插入区块。区块模式可以小到单个区块,也可以大到整页内容。与可重用区块不同,模式一旦插入,就不会与原始内容保持同步,因为其中包含的区块旨在由用户进行编辑和自定义。从底层来看,模式只是组合在一起的常规区块。主题可以注册模式,为用户提供符合该主题美学设计语言的快速起点。

模板

文章编辑器专注于文章的内容,而模板编辑器则允许使用区块声明和编辑整个站点,从页眉到页脚。模板分为模板(描述完整页面)和模板部分(描述模板内可重用的区域,包括页眉、侧边栏和页脚等语义区域)。

这些模板和模板部分可以组合在一起并由主题注册。用户还可以使用区块编辑器对其进行完全编辑;一组与站点的不同属性和设置(如站点标题、描述、Logo、导航等)交互的区块,在编辑模板和模板部分时尤其有用。自定义的模板保存在 wp_template 文章类型中。区块模板既包括静态页面,也包括动态页面,如 archives、singular、home、404 等。

注意:自定义文章类型也可以使用一个初始的 post_content 模板进行初始化,这不应与上述主题模板系统混淆。

有关站点编辑模板的更多信息。

样式

样式(Styles)以前称为全局样式,代码中也是以此名称引用的。它既是用户通过编辑器访问的界面,也是通过一个 theme.json 文件完成的配置系统。该文件吸收了通常分散在各种 add_theme_support 调用中的大部分配置内容,以简化与编辑器的通信。因此,它旨在更好地声明应启用哪些设置、主题提供哪些特定工具(如自定义调色板)、有哪些可用的设计工具,以及一个能够协调来自 WordPress、当前启用的主题和用户的样式的基础设施。

了解有关全局样式的更多信息。