Отключаем кеш на нужных страницах в Drupal

Кеширование анонимов в drupal мера сколь необходимая, столь и неудобная. Большинство страниц на сайте статичны, и использование кеша для них оправдано. Включение его может нарушить работу некоторых динамических страниц, например, страниц, где используются переменные сессии пользователя. Они будут не верно работать для анонимов. Для них кеш надо как то отключать.

Drupal не позволяет избирательно настроить кеш на странице производительности сайта — admin/settings/performance. Но выход есть — немного доработаем drupal, причем штатно через хуки.

Мы будем отключать кеширование в момент инициализации drupal (hook_init), анализируя параметр $_GET[‘q’], тип публикации или что нам ещё взбредет в голову по-анализировать. Т.е. допишем в какой то «свой» модуль myModule вот такой хук:

Есть и готовая реализация этой вещи в виде отдельного модуля, называется — CacheExclude. Но я, к примеру, не люблю засорять проект такими микро-модулями, смысл которых сводится к 10 строкам кода. Но для изучения know-how — полезность и важность таких модулей сложно переоценить.

Мало букафф? Читайте есчо !

Ставим метрику на сайт с CMS Drupal

Май 16, 2023 г.

Вы получили код для вставки метрики, осталось дело за малым - разместить его на сайте. Сайт управляется Drupal 8/9/10. Я покажу как это сделать через изменение темы сайта. Первая опция - это вставить непосредственно в один из основных шаблонов ...

Читать

Настройка редиректов в Drupal

Октябрь 5, 2024 г.

Речь пойдет о модуле redirect, который, несмотря на свои простые функции, не всегда понятен редакторам сайта. После установки модуля, на сайте появляется ...

Читать

Добавление произвольных требований при установке модуля в Drupal

Май 7, 2025 г.

Иногда модуль в Drupal требует наличия специфических сущностей или конфигураций, например — определённого текстового формата. Поскольку текстовые форматы являются конфигурационными сущностями (entities), напрямую указать их как зависимость в .info.yml ...

Читать

Рендер произвольного блока в Drupal 11

Март 13, 2025 г.

Если не хочется объявлять дополнительный регион, чтобы настроить вывод блока через админку, то можно сделать рендер блока программно. Например добавим в препроцессинг страницы переменную с рендером блока branding. Этот блок предоставляется модулем ...

Читать
 

Комментарии к «Отключаем кеш на нужных страницах в Drupal»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: