function ContextualHooks::help

Implements hook_help().

Attributes

#[Hook('help')]

File

core/modules/contextual/src/Hook/ContextualHooks.php, line 77

Class

ContextualHooks
Hook implementations for contextual.

Namespace

Drupal\contextual\Hook

Code

public function help($route_name, RouteMatchInterface $route_match) : ?string {
  switch ($route_name) {
    case 'help.page.contextual':
      $output = '';
      $output .= '<h2>' . $this->t('About') . '</h2>';
      $output .= '<p>' . $this->t('The Contextual links module gives users with the <em>Use contextual links</em> permission quick access to tasks associated with certain areas of pages on your site. For example, a menu displayed as a block has links to edit the menu and configure the block. For more information, see the <a href=":contextual">online documentation for the Contextual Links module</a>.', [
        ':contextual' => 'https://www.drupal.org/docs/8/core/modules/contextual',
      ]) . '</p>';
      $output .= '<h2>' . $this->t('Uses') . '</h2>';
      $output .= '<dl>';
      $output .= '<dt>' . $this->t('Displaying contextual links') . '</dt>';
      $output .= '<dd>';
      $output .= $this->t('Contextual links for an area on a page are displayed using a contextual links button. There are two ways to make the contextual links button visible:');
      $output .= '<ol>';
      $sample_picture = [
        '#theme' => 'image',
        '#uri' => 'core/misc/icons/bebebe/pencil.svg',
        '#alt' => $this->t('contextual links button'),
      ];
      $sample_picture = \Drupal::service('renderer')->render($sample_picture);
      $output .= '<li>' . $this->t('Hovering over the area of interest will temporarily make the contextual links button visible (which looks like a pencil in most themes, and is normally displayed in the upper right corner of the area). The icon typically looks like this: @picture', [
        '@picture' => $sample_picture,
      ]) . '</li>';
      $output .= '<li>' . $this->t('If you have the <a href=":toolbar">Toolbar module</a> installed, clicking the contextual links button in the toolbar (which looks like a pencil) will make all contextual links buttons on the page visible. Clicking this button again will toggle them to invisible.', [
        ':toolbar' => \Drupal::moduleHandler()->moduleExists('toolbar') ? Url::fromRoute('help.page', [
          'name' => 'toolbar',
        ])->toString() : '#',
      ]) . '</li>';
      $output .= '</ol>';
      $output .= $this->t('Once the contextual links button for the area of interest is visible, click the button to display the links.');
      $output .= '</dd>';
      $output .= '</dl>';
      return $output;
  }
  return NULL;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.