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

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

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

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

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

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

Настройка ЧПУ в Drupal 10: path_alias, Pathauto и Token

Июль 2, 2025 г.

Drupal — мощная, гибкая и в то же время довольно сложная CMS. Один из важных аспектов SEO и удобства пользователей — это ЧПУ (человекопонятные URL). В ...

Читать

Twig-функция qr_code() в Drupal: простой плагин с использованием Endroid QR Code

Октябрь 23, 2025 г.

Иногда в шаблоне Drupal удобно вывести QR-код прямо по месту — без внешних файлов, без рендеринга через отдельный контроллер и без подключения сторонних ...

Читать

Примеры работы с EntityFieldQuery

Декабрь 7, 2017 г.

Один раз начав работать с EntityFieldQuery, вы уже не захотите городить SQL запросы с джойнами таблиц полей сущностей. Что то сложное, возможно, сделать будет слишком трудно на этом конструкторе, но типовые выборки данных делать приятно, быстро и удобно. ...

Читать

Как запретить Drupal использовать sites/default для неизвестных хостов

Июль 30, 2025 г.

В Drupal при использовании мультисайтовой конфигурации (sites/sites.php) существует скрытая особенность: если домен не найден в $sites, Drupal по умолчанию загружает настройки из sites/default. Это может привести к неожиданным проблемам: Открытие ...

Читать
 

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

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



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