Добавление произвольного эффекта в виды показа изображений

Сегодня разберем то, как создать собственный эффект для обработки изображений в Drupal 7. Для этого нам понадобится модуль Imagecache Custom Actions из набора модулей imagecache actions и немного PHP магии.

Поставим как задачу добавить эффект зеркального поворота изображения по горизонтали.

Скачаем модуль (если его ещё нет в проекте) и поставим нужные галки, в том числе напротив Imagecache Custom Actions.

imagecache_custom_actions_on

Добавление стиля с PHP кодом потребует настройки PHP фильтра для контента. Это делается в меню «конфигурация» -> «форматы текста». Вот здесь — admin/config/content/formats.

Теперь нужно создать этот «кастомный» стиль и прописать вызов нашей функции на PHP. Переходим на страницу добавления стилей admin/config/media/image-styles/add (или добавляем Custom Actions в существующий).

new-style

Код должен возвращать TRUE, в случае успешного применения эффекта, поэтому по умолчанию в поле написано return TRUE;.add-codeРедактировать и писать код в текстовом редакторе сайта не очень удобно, потому мы оформим наш код в виде функции, тем более она может нам пригодиться для создания других стилей. А в поле впишем пока вызов этой нашей функции.

edit-custom

А вот и сама функция. В неё можно добавить некоторые обработчики исключительных ситуаций, но я что то поленился :). В контексте моей задачи в этом не было необходимости.

На входе функции мы получаем информацию в виде двух переменных,  но по факту нам пригодились данные только из одной. В вашем случае (в случае, если вы будет писать собственный обработчик) могут пригодиться оба источника. Что за коктейль из данных там передаётся, можете подебаггить сами (я делал вывод содержимого этих переменных в файл, т.к. вывод в «консоль» посмотреть во время преобразования изображения не получится).

Теперь у вас есть полная свобода в создании стилей изображений. Можно даже почикать лишние модули imagecache, заменив их своими функциями.

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

Создание плагина CKEditor 5 в экосистеме Drupal 10

Февраль 8, 2024 г.

Drupal 10 добавил в ядро модуль wysiwyg CKEditor 5. Т.е. уже из "коробки" у вас есть редактор html кода. API CKEditor 4 и 5 версий значительно отличаются, ...

Читать

Фильтр по годам во views

Март 19, 2025 г.

Задача проста - есть материалы, у которых есть поле даты (timestamp), нужно вывести кнопки фильтрующие список по годам. Дополнительно задача ...

Читать

C5BB 1.0.11 обновления

Апрель 11, 2026 г.

Вышло небольшое, но полезное обновление модуля c5bb. Продолжаю заниматься поддержкой этого проекта. Изменения в этом релизе: Добавлено предупреждение о несовместимости с Font Awesome: при включённом методе webfonts модуль теперь покажет предупреждение, ...

Читать

Кастомные настройки сайта в Drupal

Март 9, 2025 г.

На сайте всегда (или почти всегда) возникает задача управления настройками вроде телефон, email, какие то текстовые элементы, вроде копирайта, адрес организации и т.п. С точки зрения данных - требуется объект в терминах шаблонов проектирования - синглтон. ...

Читать
 

Комментарии к «Добавление произвольного эффекта в виды показа изображений»

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



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