滚动
6.7. 在 Drupal 中使用区域(Regions)和区块(Blocks)。
如果您希望在 Drupal 中添加一个新的 区域(Region) 来显示区块(Blocks),需要执行以下步骤:
- 在主题的
theme.info.yml
文件中添加区域信息。 - 编辑
page.html.twig
文件,在其中添加新区域的输出。
在 drupalbook.info.yml
文件中添加区域数据
所有区域都通过 regions
键定义:
# Regions
regions:
header: 'Header'
content: 'Content'
footer: 'Footer'
区域的机器名称(machine name) 应由字母、数字或下划线组成(与 PHP 变量命名规则类似)。
可读名称(human-readable name) 可以加引号或不加(如果名称中没有空格),但建议统一使用引号。可读名称会显示在 Drupal 管理后台,而机器名称则用于模板文件 page.html.twig
中。
在 page.html.twig
文件中输出区域
所有区域的输出都存储在 page
变量中。要显示某个区域,只需输出 page
变量的对应部分。
例如,我们在主题中定义了一个名为 header
的区域:
header: 'Header'
那么在模板中可以通过以下方式输出它:
{{ page.header }}
您可以在 page.html.twig
文件中的任意位置输出在 theme.info.yml
中定义的任何区域。
Drupal 默认区域(Standard Drupal Regions)
您可以随时参考官方模板文档:
page.html.twig 官方文档
以下是 Drupal 默认提供的标准区域:
- page.header:网站页眉(Header)区域。
- page.primary_menu:主菜单区域。
- page.secondary_menu:辅助菜单区域。
- page.highlighted:内容上方的高亮区域。
- page.help:帮助信息区域。
- page.content:主内容区域(必需区域)。
- page.sidebar_first:第一个侧边栏。
- page.sidebar_second:第二个侧边栏。
- page.footer:页脚区域。
- page.breadcrumb:面包屑导航区域。
您既可以使用 Drupal 提供的标准区域,也可以添加自定义区域。最重要的是,确保 区域名称与其在 page.html.twig
中的位置一致。