Crop модуль для картинок Drupal

Искал по работе crop модуль, который позволит редактору сайта выполнять обрезку картинки в админке при загрузке изображения в форму публикации.

На Drupal.org есть обзор подобных модулей:
https://www.drupal.org/node/1179172.

Дополнительными требованиями было:

  1. Использование модуля без пересоздания поля с картинок (иначе придется перезагружать картинки всех публикаций, где создано новое поле) — т.е. плагин должен добавить виджет для imagefield, а не новый тип поля.
  2. Версия Drupal — 7.
  3. Поддержка S3FS.

Большинство модулей реализует «обрезку» через стили, т.е. нужно добавлять или использовать специальные стили изображений, чтобы получить cropped image. Не совсем то что нужно, т.к. требуется менять настройки полей, добавлять стилей или изменять стили изображений, а иногда (если используется код связанный с обработкой изображения) и модификация кода программы.

В части первых двух требований, а также из-за общей простоты модуля, я остановился на imagefield_crop 7x-1.1.

Модуль работает следующим образом. Вы указываете на оригинальном изображении область отсечения. Полученная картинка сохраняется вместо оригинальной. А для оригинала создаётся копия, чтобы можно было впоследствии поменять параметры crop.

Но так как модуль почти 5 лет не обновляется, нет поддержки S3, а также есть кое какие лишние «примочки» и баги, то я написал патч, который превращает модуль в то, что надо.

imagefield_crop патч

Скачать можно и здесь:
https://www.drupal.org/project/imagefield_crop/issues/2928174.

Патч выполняет следующие правки:

  1. Убирает превью результата обрезки. Т.к. штука лишняя и выполнена довольно криво. К примеру, превью может отображать результат обрезки с искажением пропорций.
  2. Добавляет совместимость с S3FS.
  3. Исправляет мелкие баги, которые не влияли на функционал, но приводили к появлению предупреждений от php.

Как применить патч читайте вот тут.

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

Получить код оригинального языка сущности в Drupal

Октябрь 18, 2023 г.

Сущность возвращает язык в контексте выбранного языка, но иногда нужно получить оригинальный язык node или другой entity. Вот так выглядит запрос в контексте: [crayon-697281264a0ce010409935/] А так можно получить код языка оригинальной версии ...

Читать

Редактируем атрибуты ссылки в twig шаблоне

Июль 14, 2023 г.

Как без хуков preprocess в Drupal добавить, например, атрибут target для ссылки в шаблоне? Например, возьмем штатный шаблон file-link.html.twig: [crayon-697281264a310302370500/] Используем фильтр merge, добавляя нужные атрибуты: [crayon-697281264a317392325155/]

Читать

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

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

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

Читать

Blazy Error - Not enabled: Use theme_blazy()

Март 27, 2024 г.

Встретил такую ошибку в консоли pantheon.io сайта на Drupal. Пантеон показывает копию статуса самого сайта, т.е. то, что вы видите на странице /admin/reports/status, но при этом не показывает подробностей. Из за этого сложно понять где и как решать ...

Читать
 

Комментарии к «Crop модуль для картинок Drupal»

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



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