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

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

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

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

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

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

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

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

Использование nodequeue для управления порядком элементов в списке views

Август 8, 2018 г.

Задача в состоит в том, чтобы дать редактору возможность "ручного" управления порядком элементов в списке, создаваемом с помощью views. К примеру, есть ...

Читать

Замена первого/последнего значения в строке на PHP

Октябрь 28, 2022 г.

Задача - заменить первое/последнее искомое значение в заданной строке. В PHP много уделяется внимания работы со строками, но вот оптимального решения для этой задачи нет. Функция str_replace, заменяет все значения, но может посчитать вам сколько ...

Читать

Вывод результатов формы в саму форму после submit

Март 2, 2017 г.

Что делают в большинстве случаев после успешного submit данных формы? Вариантов два - либо показывают системное сообщение drupal_set_messge(), либо производят переадресацию на некую страницу с результатами. Первый вариант почти всегда выглядит неказисто, ...

Читать

Как использовать callback функции внутри класса

Июнь 5, 2017 г.

Пробовали ли вы использовать функции PHP, требующие указания кол-бек функции в качестве аргумента? Я часто пользуюсь preg_replace_callback(). Если функция вызывается внутри класса, то хотелось бы и callback разместить внутри этого же класса (объекта). ...

Читать
 

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

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



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