ВАЖНО! Релиз 1.0.15 является финальным, дальнейшее сопровождение данного расширения не планируется.
Системный плагин для Joomla! 3.7+ для импорта и экспорта материалов с участием настраиваемых полей.
Адаптировано для Joomla! 4.
Плагин предназначен для импорта и экспорта стандартных материалов и кастомных настраиваемых полей для них.
Экспорт изначально адаптирован под открытие результирующего файла в MS Excel или его аналогах.
- Плагин не обрабатывает содержимое материалов и кастомных настраиваемых полей!
- Плагин не обрабатывает изображения для вступительного и полного текста материала!
- При выборе конкретной категории вложенные категории не обрабатываются! Это сделано специально: не всем и не всегда необходимо обрабатывать вложенные категории.
- Плагин не обрабатывает категории материалов и категории вообще: только сами материалы! При импорте данных категории не создаются!
Причина вышеописанных ограничений и оговорок очень проста: изначальная цель работы плагина – обработка кастомных настраиваемых полей материала, и не более того.
Данные экспортируются в файл и импортируются из файла формата CSV с обязательным разделителем ;
.
Кодировка файла по умолчанию, если не установлена опция «Преобразовывать кодировку…»: UTF-8 w/o BOM. Поддерживается автоматическое преобразование кодировки, указанной в единственной настройке плагина.
Первая строка файла всегда представляет собой заголовки полей файла.
Зарезервированные имена полей:
articleid
– id обновляемого материала, содержит значение 0 для вновь добавляемого материала, игнорирует строки для материалов с несуществующим id (обязательное поле);articletitle
– заголовок материала (обязательное поле);articlecat
– id категории материала, для новых материалов при отстутсвии поля или указания id несуществующей категории будет применена категория «Uncategorised», для существующих материалов игнорируется;articlelang
– язык материала, для новых материалов при отстутствии поля материал будет доступен для всех языков, для существующих материалов игнорируется;articleintrotext
– вступительный текст материала;articlefulltext
– полный текст материала.
Поля articleid и articletitle являются обязательными, при их отстутствии импорт данных из файла не производится.
Любые иные основные поля материала игнорируются.
Любые иные имена полей принимаются за имена настраиваемых полей материала. В случаях отстутствия у материала указанных настраиваемых полей последние будут игнорироваться.
Несоответствие количества значений в строке несоответствию количеству заголовков полей приводит к отказу от обработки этой строки. При импорте дополнятельные поля материала, отсутствующие в файле, не затрагиваются.
Даные об ошибках импорта хранятся в логе cfi.php в стандартной папке логов Joomla!.
При отсутсвии ошибок импорта данных импортируемый файл удаляется, в противном случае файл сохраняется в стандартной папке временных файлов Joomla!.
При экспорте данные записываются в файл как есть, в том формате, в котором они хранятся в БД вашего сайта: простой текст, текст с разметкой HTML, структуры json, иные сложные строковые структуры.
Для стандартных настраиваемых полей Joomla! списочного типа, возвращающих структуры хранимых данных в виде неассоциированных массивов, в результирующий файл возвращается json. Для нестандартных полей в файл перед json-значением записывается структура array::
: это необходимо для того, чтобы при возможном последующем импорте этих данных плагин смог разобрать json-значение из файла и подставить соответствующему полю подготовленный массив. Если из вышеуказанной фразы вы ничего не поняли – не страшно, просто не трогайте значение array::
в вашем файле или удалите этот столбец полностью во избежание повреждения данных соответсвующего поля материала.
Данные настраиваемых полей записываются в БД прямыми запросами и не подвергаются какой-либо обработке. Ввиду того, что в этих данных могут присутствовать теги HTML-разметки, json-строки или иные строковые конструкции, содержащие специализированные символы, экранирование данных не производится! Пожалуйста, обеспечьте безопасность импортируемых данных на этапе генерации файла для импорта данных в Joomla!.
Разработчик плагина не несёт ответственность за некорректное содержимое импортируемых файлов, которое может вывести из строя ваш сайт.
Более полная документация здесь: https://joomline.ru/docs/104-cfi.html