public function ContextBlockPageVariant::build in Context 8.0
Same name and namespace in other branches
- 8.4 src/Plugin/DisplayVariant/ContextBlockPageVariant.php \Drupal\context\Plugin\DisplayVariant\ContextBlockPageVariant::build()
- 8 src/Plugin/DisplayVariant/ContextBlockPageVariant.php \Drupal\context\Plugin\DisplayVariant\ContextBlockPageVariant::build()
Builds and returns the renderable array for the display variant.
The variant can contain cacheability metadata for the configuration that was passed in setConfiguration(). In the build() method, this should be added to the render array that is returned.
Return value
array A render array for the display variant.
Overrides VariantInterface::build
File
- src/
Plugin/ DisplayVariant/ ContextBlockPageVariant.php, line 94
Class
- ContextBlockPageVariant
- Provides a page display variant that decorates the main content with blocks.
Namespace
Drupal\context\Plugin\DisplayVariantCode
public function build() {
$build = [
'#cache' => [
'tags' => [
'context_block_page',
$this
->getPluginId(),
],
],
];
// Place main content and messages blocks, these will be removed by the
// reactions if a message or content block has been manually placed.
$build['content']['system_main'] = $this->mainContent;
$build['content']['messages'] = [
'#weight' => -1000,
'#type' => 'status_messages',
];
// Execute each block reaction and let them modify the page build.
foreach ($this->contextManager
->getActiveReactions('blocks') as $reaction) {
$build = $reaction
->execute($build, $this->title, $this->mainContent);
}
return $build;
}