从Drupal4.7开始, Drupal主题制作者就可以定义任意数量的区域('regions')了,用于内容的展示。这个改进的区域机制,取代了原有的左栏、右栏区域,这使得drupal主题的布局和设计都更加灵活了。
对于那些不是基于主题引擎的主题,可以在.theme文件中使用themename_regions()函数来定义所用的区域。基于引擎的主题,其引擎为其定义了默认的可用区域(定义在.engine文件中),不过它们也可以定义自己的区域。
内容是通过区块系统指定到区域中去的,当然也可以使用drupal_set_content()函数。例如,drupal_set_content('left', 'Hello there'),将把文本“Hello there”指定到左栏区域中。由当前主题或者其引擎定义的所有的区域,在区块配置页面都是可用的。
由主题的.theme文件(或者主题引擎的.engine文件)定义的第一个区域,将成为主题的默认区域,例如,用在区块配置页面中,它将作为区块位置的默认选项。
对于最低限度的升级要求,可参看升级4.6主题;关于实现区域的更多细节可参看纯PHP主题和PHPTemplate页面。