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

Сегодня разберем то, как создать собственный эффект для обработки изображений в 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, заменив их своими функциями.

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

Рендер ссылки в twig

Октябрь 3, 2021 г.

В шаблонах twig вы можете использовать функцию link, для рендера ссылки. Параметры вызова следующие - link($text, $uri, $attributes = {}), первые два - обязательные. [crayon-6ae7e99576136462860232/] Результатом будет следующий HTML код: ...

Читать

Подключение внешних файлов библиотек в Drupal *.libraries.yml

Апрель 7, 2024 г.

При объявлении библиотек вы можете подключать не только локальные, но и внешние файлы. Для этого нужно указать тип библиотеки - external. Например: [crayon-6ae7e995763f2464279333/] О полном списке допустимых атрибутах читайте в документации.

Читать

Загрузка (установка) Drupal с помощью composer

Май 8, 2021 г.

Конечно можно скачать/установить Drupal в ручную, это очень просто и не требует "лишних" инструментов. Но composer не просто так кушает свой хлеб. Его ...

Читать

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

Март 13, 2025 г.

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

Читать
 

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

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



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