You are here

class Title in Drupal 10

Same name and namespace in other branches
  1. 8 core/modules/views/src/Plugin/views/area/Title.php \Drupal\views\Plugin\views\area\Title
  2. 9 core/modules/views/src/Plugin/views/area/Title.php \Drupal\views\Plugin\views\area\Title

Views area title override handler.

Plugin annotation

@ViewsArea("title");

Hierarchy

  • class \Drupal\views\Plugin\views\area\AreaPluginBase extends \Drupal\views\Plugin\views\HandlerBase
    • class \Drupal\views\Plugin\views\area\Title

Expanded class hierarchy of Title

Related topics

87 string references to 'Title'
AddHandler::buildForm in core/modules/views_ui/src/Form/Ajax/AddHandler.php
AjaxCommandsTest::testOpenDialogCommand in core/tests/Drupal/Tests/Core/Ajax/AjaxCommandsTest.php
@covers \Drupal\Core\Ajax\OpenDialogCommand
AjaxCommandsTest::testOpenModalDialogCommand in core/tests/Drupal/Tests/Core/Ajax/AjaxCommandsTest.php
@covers \Drupal\Core\Ajax\OpenModalDialogCommand
BlockFormMessagesTest::testValidationMessage in core/modules/layout_builder/tests/src/FunctionalJavascript/BlockFormMessagesTest.php
Tests that validation messages are shown on the block form.
BlockInterfaceTest::testBlockInterface in core/modules/block/tests/src/Kernel/BlockInterfaceTest.php
Tests configuration and subsequent form() and build() method calls.

... See full list

File

core/modules/views/src/Plugin/views/area/Title.php, line 14

Namespace

Drupal\views\Plugin\views\area
View source
class Title extends AreaPluginBase {

  /**
   * {@inheritdoc}
   */
  protected function defineOptions() {
    $options = parent::defineOptions();
    $options['title'] = [
      'default' => '',
    ];
    return $options;
  }

  /**
   * {@inheritdoc}
   */
  public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    parent::buildOptionsForm($form, $form_state);
    $form['title'] = [
      '#type' => 'textfield',
      '#title' => $this
        ->t('Overridden title'),
      '#default_value' => $this->options['title'],
      '#description' => $this
        ->t('Override the title of this view when it is empty. The available global tokens below can be used here.'),
    ];

    // Don't use the AreaPluginBase tokenForm method, we don't want row tokens.
    $this
      ->globalTokenForm($form, $form_state);
  }

  /**
   * {@inheritdoc}
   */
  public function preRender(array $results) {
    parent::preRender($results);

    // If a title is provided, process it.
    if (!empty($this->options['title'])) {
      $value = $this
        ->globalTokenReplace($this->options['title']);
      $this->view
        ->setTitle($this
        ->sanitizeValue($value, 'xss_admin'));
    }
  }

  /**
   * {@inheritdoc}
   */
  public function render($empty = FALSE) {

    // Do nothing for this handler by returning an empty render array.
    return [];
  }

}

Members

Namesort descending Modifiers Type Description Overrides
AreaPluginBase::$areaType public property The type of this area handler, i.e. 'header', 'footer', or 'empty'.
AreaPluginBase::adminSummary public function
AreaPluginBase::init public function Overrides Drupal\views\Plugin\views\HandlerBase::init(). 1
AreaPluginBase::isEmpty public function Does that area have nothing to show. 1
AreaPluginBase::usesGroupBy public function
Title::buildOptionsForm public function Overrides AreaPluginBase::buildOptionsForm
Title::defineOptions protected function Overrides AreaPluginBase::defineOptions
Title::preRender public function Performs any operations needed before full rendering. Overrides AreaPluginBase::preRender
Title::render public function Render the area. Overrides AreaPluginBase::render