Импортируем изображения через wysiwyg

Речь пойдет о небольшой задачке, которая постоянно всплывает при переносе данных со старых сайтов на новые.

Т.е. новый сайт уже готов, но есть старый, на котором какое то количество статей, требующих аккуратного переноса, при чем они содержат картинки. При переносе «вручную» приходится копировать сначала текст. Потом скачивать картинки себе на компьютер (ага, save as). Потом мы вставляем картинки в новую статью, т.е. грузим их через файл-менеджер wysiwyg на сайт, корректируем размеры, наверное и заголовок, поле alt понадобится заполнить попутно. Все это не укладывается уже в схему простого copy-paste.

Когда статей очень много, то без написания программы экспорта не обойтись, но для полусотни публикаций экспорт писать дело неблагодарное.

Почему бы не заставить drupal самостоятельно скачивать картинки? Ведь когда мы копируем в редактор кусок html, он сохраняет внешний URL картинки и все её прочие атрибуты. Нужно только программно закачать картинку и подменить путь в HTML на какой то локальный.

Задачу решал в Drupal 7, потому в моём примере код будет реализован в hook_node_presave. Для шестерки следует реализовать зацепку nodeapi.

Надеюсь, этот кусочек кода съэкономит вам время. :)

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

Подстановка токенов в коде Drupal 9

Август 1, 2021 г.

Ядро и модули объявляют множество токенов подстановки. Рассмотрим как получить доступ к глобальному объекту типа \Drupal\Core\Utility\Token и выполнить подстановку в строке. Ядро предоставляет экземпляр объекта через следующий запрос: [crayon-69eeb937af422902942216/] ...

Читать

Как удалить объявленный ранее @RestResource

Июль 12, 2023 г.

Сначала вы создали в Drupal rest ресурс - /Plugin/rest/resource, поработали с ним, а потом пришло время прощаться. Но вот проблема - система уже знает о ресурсе, и если вы удалите файл, то при попытке зайти в админ панель расширений /admin/modules, вы ...

Читать

Получим объект публикации (node) внутри кода модуля

Апрель 20, 2014 г.

По разным причинам нам может понадобится информация объекта текущей публикации (ноды) внутри модуля.Если код модуля вызывается из шаблона, то достаточно передать локальную переменную $node. Если такой возможности нет, то код ноды можно получить из текущего ...

Читать

Модификация тела письма перед отправкой в Drupal

Июнь 9, 2023 г.

Рассмотрим два варианта, как зацепиться к отправляемым письмам и внести туда свои изменения. Первый вариант заключается в прямом изменении тела письма перед отправкой. Для этого мы реализуем hook_mail_alter(&message). MAIL ALTER хук Переменная ...

Читать
 

Комментарии к «Импортируем изображения через wysiwyg»

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



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