Шаблоны для разных режимов отображения терминов таксономии в Drupal 8/9

27 февраля 2021 - 22:31
/**
 * Implements hook_theme_suggestions_taxonomy_term_alter().
 */

function THEMENAME_theme_suggestions_taxonomy_term_alter(array &$suggestions, array $variables) {
  /** @var \Drupal\taxonomy\TermInterface $term */
  $term = $variables['elements']['#taxonomy_term'];
  $sanitized_view_mode = strtr($variables['elements']['#view_mode'], '.', '_');
  // Add view mode theme suggestions.
  $suggestions[] = 'taxonomy_term__' . $sanitized_view_mode;
  $suggestions[] = 'taxonomy_term__' . $term->bundle() . '__' . $sanitized_view_mode;
  $suggestions[] = 'taxonomy_term__' . $term->id() . '__' . $sanitized_view_mode;
}

Подключение внешней JS-библиотеки в тему Drupal 8/9

18 февраля 2021 - 18:41
Код для файла THEMENAME.libraries.yml на примере Fancybox:
fancybox:
  remote: https://fancyapps.com/fancybox/3/
  version: 3.5.7
  license:
    name:  GNU GPLv3
    url: http://fancyapps.com/fancybox/3/#license
    gpl-compatible: true
  js:
    https://cdn.jsdelivr.net/gh/fancyapps/fancybox@3.5.7/dist/jquery.fancybox.min.js: {type: external, minified: true}
  css:
    theme:
      https://cdn.jsdelivr.net/gh/fancyapps/fancybox@3.5.7/dist/jquery.fancybox.min.css: {type: external, minified: true}

Перевод сайта на Drupal 8 на управление с помощью Composer

03 февраля 2019 - 17:48
  1. Все контрибные модули (установленные с drupal.org) помещаем в папку /modules/contrib, кастомные - в папку /modules/custom
  2. Контрибные темы переносим в /themes/contrib, кастомные темы - в /themes/custom
  3. Очищаем кеш командой drush cr или обращением к срипту /core/rebuild.php (при включенной настройке $settings['rebuild_access'] = TRUE в settings.php)
  4. Устанавливаем плагин для Composer Composerize Drupal

Страницы

Подписка на Лента главной страницы