function ViewExecutable::attachDisplays
Same name in other branches
- 9 core/modules/views/src/ViewExecutable.php \Drupal\views\ViewExecutable::attachDisplays()
- 8.9.x core/modules/views/src/ViewExecutable.php \Drupal\views\ViewExecutable::attachDisplays()
- 11.x core/modules/views/src/ViewExecutable.php \Drupal\views\ViewExecutable::attachDisplays()
Runs attachment displays for the view.
1 call to ViewExecutable::attachDisplays()
- ViewExecutable::build in core/
modules/ views/ src/ ViewExecutable.php - Builds the query for the view.
File
-
core/
modules/ views/ src/ ViewExecutable.php, line 1771
Class
- ViewExecutable
- Represents a view as a whole.
Namespace
Drupal\viewsCode
public function attachDisplays() {
if (!empty($this->is_attachment)) {
return;
}
if (!$this->display_handler
->acceptAttachments()) {
return;
}
$this->is_attachment = TRUE;
// Find out which other displays attach to the current one.
foreach ($this->display_handler
->getAttachedDisplays() as $id) {
$display_handler = $this->displayHandlers
->get($id);
// Only attach enabled attachments that the user has access to.
if ($display_handler->isEnabled() && $display_handler->access()) {
$cloned_view = Views::executableFactory()->get($this->storage);
$display_handler->attachTo($cloned_view, $this->current_display, $this->element);
}
}
$this->is_attachment = FALSE;
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.