Extra Block Types (EBT) - New Layout Builder experience❗

Extra Block Types (EBT) - styled, customizable block types: Slideshows, Tabs, Cards, Accordions and many others. Built-in settings for background, DOM Box, javascript plugins. Experience the future of layout building today.

Demo EBT modules Download EBT modules

❗Extra Paragraph Types (EPT) - New Paragraphs experience

Extra Paragraph Types (EPT) - analogical paragraph based set of modules.

Demo EPT modules Download EPT modules

Scroll

9.3. Отключаем кеш в Drupal 8. Вывод debug информации в шаблоне.

19/11/2019, by Ivan

Прежде чем приступить к разработке на Drupal 8 следует отключить кеш. В отличии от Drupal 7 в 8ой версии друпала кешируется не только сущности, views, поля, теперь кешируются скомплированные шаблоны twig'a и всевозможные render'ы. Для того чтобы отключить весь этот кеш, нужно сделать следующее.

1. Скопируйте файл /sites/example.settings.local.php в файл /sites/default/settings.local.php

В этом файле уже есть необходимые настройки для отключения кеша

settings

2. В файле settings.php раскомментируйте следующие строки, это подключит созданный нами settings.local.php:

if (file_exists(__DIR__ . '/settings.local.php')) {
  include __DIR__ . '/settings.local.php';
}

Это подключит local.settings.php.

3. Проверьте что эта строчка расскомментирована в settings.local.php:

$settings['container_yamls'][] = DRUPAL_ROOT . '/sites/development.services.yml';

Файл development.services.yml уже создан, нам нужно только его подключить.

4. Нужно также проверить что в settings.local.php отключена агрегация CSS и Javascript:

$config['system.performance']['css']['preprocess'] = FALSE;
$config['system.performance']['js']['preprocess'] = FALSE;

5. Также нужно отключить кеширование отрендеренного HTML и кеш модуля Dynamic Pages:

$settings['cache']['bins']['render'] = 'cache.backend.null';
$settings['cache']['bins']['dynamic_page_cache'] = 'cache.backend.null';

Найдите эти строки в settings.local.php и раскомментируйте их.

6. Чтобы Drupal 8 не подхватывал тесты из модулей, нужно поменять значение этой настройки на FALSE:

$settings['extension_discovery_scan_tests'] = FALSE;

7. Теперь в /sites/development.services.yml нужно дописать следующий абзац:

parameters:
  twig.config:
    debug: true
    auto_reload: true
    cache: false

В результате development.services.yml будет выглядеть вот так:

# Local development services.
#
# To activate this feature, follow the instructions at the top of the
# 'example.settings.local.php' file, which sits next to this file.
services:
  cache.backend.null:
    class: Drupal\Core\Cache\NullBackendFactory
   
parameters:
  http.response.debug_cacheability_headers: true
  twig.config:
    debug: true
    auto_reload: true
    cache: false

Очень важно соблюдать переносы строк и отступы в yml файлах, в качестве отступов используйте только 2 пробела и никаких символов табуляции. 

debug: true

Эта строчка отвечает за распечатывание возможных названий для переопределия каждого используемого шаблона для вывода на странице. Иногда это может ломать верстку и вызывать ошибку в некоторых модулях, хотя и очень редко. В остольном это очень удобная вещь для изучения структуры шаблонов в Drupal 8.

8. После этого нужно почистить кеш, что можно сделать через drush:

drush cr

Или запустив скрипт на сайте:

http://yoursite/core/rebuild.php