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

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

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

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

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

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

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

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

Программное создание публикации в Drupal 7

Апрель 15, 2017 г.

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

Читать

Настройка редиректов в Drupal

Октябрь 5, 2024 г.

Речь пойдет о модуле redirect, который, несмотря на свои простые функции, не всегда понятен редакторам сайта. После установки модуля, на сайте появляется ...

Читать

Ошибка запуска Cron

Сентябрь 23, 2016 г.

Что делать, если запуск Cron в Drupal 6 постоянно выдаёт такую ошибку -  "Cron run failed."? Смотрим, как возникает данная ситуация в библиотеке /includes/common.inc . Функция drupal_cron_run() использует флаг для блокировки одновременного запуска: [crayon-6941cef22ae6e491939864/] ...

Читать

Создание контроллера для скачивания файла в Drupal

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

Пример кода, реализующий endpoint скачиваемого файла. [crayon-6941cef22af74388064841/] Кроме контроллера, вам потребуется еще задать маршрут. Пример описания маршрута: [crayon-6941cef22af7c763715654/]

Читать
 

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

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



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