amp-8.x-3.5/modules/amp_toolbar/amp_toolbar.module

modules/amp_toolbar/amp_toolbar.module
<?php

/**
* Implements hook_preprocess_html().
*
* Reset toolbar classes and add sidebar toggle button to the header.
*/
function amp_toolbar_preprocess_html(&$variables) {
  $amp_context = \Drupal::service('router.amp_context');
  if ($amp_context->isAmpRoute()) {

    // Also change the toolbar page classes to from horizontal to vertical.
    // A module can't do that, only the theme is run late enough, so invoke
    // hook_preprocess_html in the theme.
    // @see ampsubtheme_example.theme.

    // Wrap the toolbar in an amp-sidebar element.
    $toolbar = $variables['page_top']['toolbar'];
    $variables['page_top']['toolbar']['#theme_wrappers'] = [
      'amp_sidebar' => [
        '#id' => 'sidebar-toolbar',
        '#tabindex' => 0,
        '#attributes' => [
          'side' => 'left',
          'layout' => 'nodisplay',
        ],
        '#content_attributes' => [
          'class' => ['sidebar-close'],
        ],
        '#access' => $toolbar['#access'],
        '#cache' => $toolbar['#cache'],
      ],
    ];

    // Add hamburger button to toggle the sidebar.
    // Added to the page top which all themes have. Any theme could move the
    // whole thing to a different location using hook_preprocess_html().
    // @see ampsubtheme_example.theme.
    $variables['page_top']['sidebar-toolbar-toggle'] = [
      '#theme' => 'amp_sidebar_toggle',
      '#sidebarid' => 'sidebar-toolbar',
      '#tabindex' => 0,
      '#title' => t('Toolbar'),
      '#attributes' => [
        'class' => ['sidebar-toggle-left'],
      ],
      '#access' => $toolbar['#access'],
    ];

  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc