1.20.x layout_renderer_standard.inc | LayoutRendererStandard::renderRegions() |
Render all prepared regions, placing already-rendered blocks into their appropriate positions therein.
Return value
array: An array of rendered layout regions, keyed on the region name.
File
- modules/
layout/ plugins/ renderers/ layout_renderer_standard.inc, line 560
Class
- LayoutRendererStandard
- The standard render for a Layout display object.
Code
function renderRegions() {
$this->rendered['regions'] = array();
// Loop through all layout regions, put all blocks that belong to the
// current region in an array, then render the region. Primarily this
// ensures that the blocks are arranged in the proper order.
foreach ($this->prepared['regions'] as $region_id => $conf) {
$region_blocks = array();
foreach ($conf['uuids'] as $uuid) {
// Only include blocks for region rendering if they had some output.
if (!empty($this->rendered['blocks'][$uuid])) {
$region_blocks[$uuid] = $this->rendered['blocks'][$uuid];
}
}
$this->rendered['regions'][$region_id] = $this->renderRegion($region_id, $region_blocks);
}
return $this->rendered['regions'];
}