function Attachment::attachTo
Same name in other branches
- 9 core/modules/views/src/Plugin/views/display/Attachment.php \Drupal\views\Plugin\views\display\Attachment::attachTo()
- 10 core/modules/views/src/Plugin/views/display/Attachment.php \Drupal\views\Plugin\views\display\Attachment::attachTo()
- 11.x core/modules/views/src/Plugin/views/display/Attachment.php \Drupal\views\Plugin\views\display\Attachment::attachTo()
Overrides DisplayPluginBase::attachTo
File
-
core/
modules/ views/ src/ Plugin/ views/ display/ Attachment.php, line 237
Class
- Attachment
- The plugin that handles an attachment display.
Namespace
Drupal\views\Plugin\views\displayCode
public function attachTo(ViewExecutable $view, $display_id, array &$build) {
$displays = $this->getOption('displays');
if (empty($displays[$display_id])) {
return;
}
if (!$this->access()) {
return;
}
$args = $this->getOption('inherit_arguments') ? $this->view->args : [];
$view->setArguments($args);
$view->setDisplay($this->display['id']);
if ($this->getOption('inherit_pager')) {
$view->display_handler->usesPager = $this->view->displayHandlers
->get($display_id)
->usesPager();
$view->display_handler
->setOption('pager', $this->view->displayHandlers
->get($display_id)
->getOption('pager'));
}
$attachment = $view->buildRenderable($this->display['id'], $args);
switch ($this->getOption('attachment_position')) {
case 'before':
$this->view->attachment_before[] = $attachment;
break;
case 'after':
$this->view->attachment_after[] = $attachment;
break;
case 'both':
$this->view->attachment_before[] = $attachment;
$this->view->attachment_after[] = $attachment;
break;
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.