И о других проблемах таксономии в Drupal 6

Кроме отсутствия гибкого управления (явно не хватает ряда hook-ов), о чем я говорил ранее, таксономия в 6-м Drupal еще и делает по два запроса на каждый node_load, а не хранится в кеше контента cache_content (это хорошо показывает devel).

taxonomy-duplex

При формировании, к примеру, главной ленты на lux-e.ru приходится вызывать node_load до полусотни раз. С учетом того, что на один nod_load приходится 8 запросов к базе — это выливается в 4 сотни запросов из которых сотня — привет от таксономии!

node_loadЧто делать? В каждом случае ответ будет очень индивидуальным. Для вывода такого уникального объекта как лента статей, поможет кеширование всей ленты. Нужно подбирать способ кеширования, подходящий для архитектуры проекта. Решения вроде модуля boost, к сожалению убивают всю динамику блоков.

Стоит с помощью того же devel проанализировать кол-во и тяжесть запросов. Закешировать какие то объекты, части верстки, блоки. В общем, есть где развернуться программисту-оптимизатору.

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

Миграция картинки по URL в Media поле (Drupal)

Март 3, 2024 г.

Мне нужен был обработчик для migration API, который создаёт media entity по URL и возвращает его ID. Обработчики представляют из себя расширения ProcessPluginBase, которые нужно размещать в папке /src/Plugin/migrate/process вашего модуля. Файл ...

Читать

Генерация JWT токена в Drupal

Июль 30, 2023 г.

Модуль jwt реализует REST аутентификацию, настройку ключа и многое другое. Небольшой спиппет как сгенерировать и отправить jwt с собсвенной нагрузкой. Передадим токен, в котором полезной нагрузкой будет ID пользователя. А время жизни токена - 1 ...

Читать

Как добавить css классы в attributes (twig, Drupal)

Май 16, 2024 г.

Порою требуется добавить свои классы в переменную attributes на уровне шаблона (в twig). Переменная attributes - это объект Drupal\Core\Template\Attribute. У него есть нужный нам метод - addClass(). Пример использования: [crayon-693f26bf8fc53159013037/]

Читать

Drush выдает ошибку: Unable to load autoload.php

Сентябрь 19, 2023 г.

Если вы используете глобальную установку drush, то вероятно забыли выполнить инициализацию проекта. Drush управляется composer-ом, и после клонирования репозитория на локальный сервер требуется выполнить в корне drush: [crayon-693f26bf8fe4a343364372/]

Читать
 

Комментарии к «И о других проблемах таксономии в Drupal 6»

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



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