** Данная приблуда ускоряет в разы создание редактирование CSV файла импорта для Feeds **
Идея модуля в том, чтобы вмуровать интерфейс наподобии таблицы MS Exel прямо в интерфейс админки нашего друпалиного сайта.
Дано:
1. 10 типов нод, в каждом - 10 полей, среди которых таксономия и картинки
2. Девочка/мальчик контент-менеджер, слабо знакомый с техническими тонкостями
Даже нет, сгустим краски: это будет интернет магазин на базе Drupal Commerce, т.е дисплей и собственно продукты. Нужно первоначально залить и затем ежедневно обновлять прим 1000 товаров Так случилось, что ничего кроме Feeds у нас нет
Традиционный путь создания CSV:
Открываем Exel или ОpenOffice и начинаем вдумчиво, строка за строкой набивать базу. С простыми текстовыми полями нет проблем, а если у нас списки, таксономия или картинки?
Например поле с несколькими картинками. Классический путь: закачиваем через ФТП клиент картинки, собираем их Урлы и вставляем через запятую в требуемую клеточку таблицы. Повторим для 1000 товаров Попробуйте, увлекательно
Или, поле таксономии. Множественные термины. Терминов в словаре скажем 50. Мы открываем страницу со списками термина (кстати, не факт, что у контент менеджера должен быть доступ к подобным спискам), выбираем нужные и вставляем в клеточи таблицы.
При этом нужно понимать, что название термина не является уникальным, нам бы желательно указывать числовой ID, который нигде в интерфейсея явно не указан
Та же история с обычными текстовыми полями-списками.
Вообщем понятно - нужно автоматизировать.
Качать отсюда http://drupalcode.org/sandbox/ymakux/1856080.git. Берём самый последний (тот что выше) snapshot
Для каждого существующего Feeds импортера можно создать его визуальное отображение через Feeds Editor - worksheet. UI реализовано через обалденный плагин таблицы - JQgrid
При создании worksheet одновременно создаётся соответствующая табличка в БД (можно использовать сторонние БД, в том числе удалённые - это нужно прописать в settings.php).
В дальнейшем все внесённые/изменённые записи будут сохраняться в этой таблице.
Что можно делать на данном этапе после того, как мы заполнили нашу worksheet
1) Экспортировать в обычный CSV файл
2) Сохранить в CSV и немедленно запустить соостветствующий импорт
На данный момент процентов на 80 сделана версия модуля, которая не привязана к Feeds, а заточена сугубо под Drupal Commerce
Комментарии
Щикарно .
Потестируем .
Ай молодца. Реально порадовал!
Полезная штука - Feeds правда не пользую ни разу но идея с JQgrid шикарна.
С ув., Алексей
Хороший способ монетизации. Интересно и полезно на 80%. notreadyware
Кто тестил на Commerce?
Типа не готов? Где, в чем? Любой софт никогда не готов на 100%
Я не тестировал серьёзно на продакшн, собственно поэтому и выложил - чтобы ловили баги, не мне же всё одному
Однако результаты утешительные - ноды создаются/обновляются, картинки массово закачиваются, CSV генерится корректно
Опасаться модуля не стоит - используется АПИ Друпал, для подстраховка для worksheet используйте сторонние датабазы - можно на удалённом сервере (это кстати открывает широкие возможности для коллективной работы контент менеджеров)
Можно ли как то автоматом заполнить worksheet полями всех уже созданных нод? Или напримиер загрузить данные из существующего cvs файла?
Таблица сейчас не заполняется - пишет ошибку - error Status: 'Service unavailable (with message)'. Error code: 500.
Я думал об этом. Пока не на первом месте в моём TODO списке
Можно подробнее, после какого действия такое?
При выборе worksheet в самой таблице при добавлении строки(Add new row - в нижнем левом углу.)
И в настройках Feeds importers в mapping вылезает ошибка - Notice: Trying to get property of non-object в функции feeds_editor_form_feeds_ui_mapping_form_alter() (строка 260 в файле Z:\home\new\www\sites\all\modules\1856080-cf7023a\feeds_editor.module).
ок, спасибо за багрепорт.
Если отключить Feeds Editor, ошибка исчезает?
Не могу обещать сроки фикса, данный модуль делался под конкретный проджект, который обещает быть завершён в течении месяца. Стало быть это ориентировочно время устранение бага
Если отключить модуль - да. То есть она появляется не зависимо от того, создан worksheet или нет.