Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. WizardPluginBase.php

function WizardPluginBase::pageDisplayOptions

Retrieves the page display options.

Parameters

array $form: The full wizard form array.

\Drupal\Core\Form\FormStateInterface $form_state: The current state of the wizard form.

Return value

array Returns an array of display options.

3 calls to WizardPluginBase::pageDisplayOptions()
Node::pageDisplayOptions in core/modules/node/src/Plugin/views/wizard/Node.php
Retrieves the page display options.
Node::pageDisplayOptions in core/modules/node/src/Plugin/views/wizard/Node.php
Retrieves the page display options.
WizardPluginBase::buildDisplayOptions in core/modules/views/src/Plugin/views/wizard/WizardPluginBase.php
Builds an array of display options for the view.
1 method overrides WizardPluginBase::pageDisplayOptions()
Node::pageDisplayOptions in core/modules/node/src/Plugin/views/wizard/Node.php
Retrieves the page display options.

File

core/modules/views/src/Plugin/views/wizard/WizardPluginBase.php, line 1068

Class

WizardPluginBase
Base class for Views wizard plugins.

Namespace

Drupal\views\Plugin\views\wizard

Code

protected function pageDisplayOptions(array $form, FormStateInterface $form_state) {
    $display_options = [];
    $page = $form_state->getValue('page');
    $display_options['title'] = $page['title'];
    $display_options['path'] = $page['path'];
    $display_options['style'] = [
        'type' => $page['style']['style_plugin'],
    ];
    // Not every style plugin supports row style plugins.
    // Make sure that the selected row plugin is a valid one.
    $options = $this->rowStyleOptions();
    $display_options['row'] = [
        'type' => isset($page['style']['row_plugin']) && isset($options[$page['style']['row_plugin']]) ? $page['style']['row_plugin'] : 'fields',
    ];
    // If the specific 0 items per page, use no pager.
    if (empty($page['items_per_page'])) {
        $display_options['pager']['type'] = 'none';
    }
    elseif (!empty($page['pager'])) {
        $display_options['pager']['type'] = 'mini';
    }
    else {
        $display_options['pager']['type'] = 'some';
    }
    $display_options['pager']['options']['items_per_page'] = $page['items_per_page'];
    // Generate the menu links settings if the user checked the link checkbox.
    if (!empty($page['link'])) {
        $display_options['menu']['type'] = 'normal';
        $display_options['menu']['title'] = $page['link_properties']['title'];
        [
            $display_options['menu']['menu_name'],
            $display_options['menu']['parent'],
        ] = explode(':', $page['link_properties']['parent'], 2);
    }
    return $display_options;
}

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal