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

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

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

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

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

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

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

Написать комментарий

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

Дополняем результаты views

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

Пример того, как можно дополнить результаты views в Drupal 9/10. Задача - вывести для статьи блок со связанными публикациями. В начале нужно было просто выводить последние статьи того же типа, а потом у заказчика возникло желание переопределять выдачу, ...

Читать

Добавление пунктов меню в Administration menu (admin_menu)

Апрель 8, 2020 г.

Популярный административный модуль admin_menu, собирает всё самое нужное и важное для управления сайтом. И хотя в 7 версии в ядре вы найдете модуль tool, обладающий похожим функционалом, ему не удалось заменить admin_menu. Далее, разберем код, добавляющий ...

Читать

 

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

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



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