首页 / 主题开发手册 / 区块主题 / 经典主题转区块主题

经典主题转区块主题

虽然你可以发现很多好处,但将经典主题转为区块主题时,有一些潜在的问题需要考虑。

  • 转换经典主题可能会影响到子主题,在转换之前要考虑到潜在的影响。
  • theme.json需要WordPress 5.8或更高的版本。因此,在WordPress 5.8发布时,对Internet Explorer 11的支持被放弃了。如果你的经典主题支持IE11,转换到区块主题可能会影响主题的外观。

逐步采用全站式编辑

有几种方法可以在经典主题上慢慢采用全站编辑功能。

通用主题
通用主题是拥有自定义选项的区块主题。定制器在区块主题上默认是不可用的,但你可以通过在 functions.php 上添加 customize_register 来启用它。

混合主题
混合主题是采用了全站编辑功能的经典主题,如theme.json模板编辑器。例如,你可以通过简单地在你的经典主题上添加theme.json来启用调色板或设置默认内容宽度。

注意:添加theme.json可以启用全局样式,但并不能启用样式接口。

 

启用区块功能

 

在经典主题中添加theme.json

theme.json管理全局样式,也管理每个区块。此外,它还整合了所有add_theme_support。当使用theme.json时,不需要在functions.php中调用add_theme_support。可以通过在根目录下创建theme.json添加到经典主题中。注意,theme.json需要WordPress 5.8或更高版本。

 

在经典主题中添加区块模式

区块模式是由区块组成的预设布局。它们可以被插入到网站的任何地方,包括页眉和页脚。例如,当一个经典主题为用户提供了添加边栏的选择时,传统上一个主题通过定制器提供了单栏布局或双栏布局。区块模式可以使用区块标记提供同样的选择。了解更多关于如何添加区块模式的信息

 

启用模板编辑器

有几种方法来启用模板编辑器:

  • 添加theme.json
  • 添加add_theme_support( 'block-templates' );

 

禁用模板编辑器

要在没有模板编辑器的情况下使用theme.json,主题作者可以通过删除block-templates主题支持来选择不使用这个功能:

remove_theme_support( 'block-templates' );

 

定制器选项

创建一个模板目录,并在其中添加一个index.html,可以在文章编辑器中启用模板编辑器,并在管理区的外观菜单下启用网站编辑器。然而,这样做的结果是隐藏了“自定义”菜单。

注意:你可以通过添加customize_register来恢复定制器。这种方法适用于通用主题或混合主题。通用主题在定制器和网站编辑器中工作。

 

更新日志:

  • Updated 2022-02-15 增加了关于如何删除块状模板主题支持的信息。
  • Created 2022-01-20