You are here

private function ViewsFieldFormatter::getViewArray in Views field formatter 8.2

Custom function to generate a view render array.

Parameters

\Drupal\views\ViewExecutable $view: The view.

string $view_display: The view display.

array $arguments: The arguments to pass to the view.

array $settings: The field formatter settings.

Return value

array A render array.

1 call to ViewsFieldFormatter::getViewArray()
ViewsFieldFormatter::viewElements in src/Plugin/Field/FieldFormatter/ViewsFieldFormatter.php
Builds a renderable array for a field value.

File

src/Plugin/Field/FieldFormatter/ViewsFieldFormatter.php, line 493

Class

ViewsFieldFormatter
Class ViewsFieldFormatter.

Namespace

Drupal\views_field_formatter\Plugin\Field\FieldFormatter

Code

private function getViewArray(ViewExecutable $view, $view_display, array $arguments, array $settings) : array {
  if ((bool) $settings['hide_empty'] === TRUE) {
    $view
      ->setArguments($arguments);
    $view
      ->setDisplay($view_display);
    $view
      ->preExecute();
    $view
      ->execute();
    if (empty($view->result)) {
      return [];
    }
  }
  return [
    '#type' => 'view',
    '#name' => $view
      ->id(),
    '#display_id' => $view_display,
    '#arguments' => $arguments,
  ];
}