Параграфы, оторванные от родительской entity нам не нужны, потому эта миграция является дочерней к рассматриваемому примеру миграции статей блога из CSV.
Из всего набора полей источника нам требуется только два поля — это id и body.
migrate_plus.migration.custom_text_to_paragraph.yml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
langcode: en status: true dependencies: { } id: custom_text_to_paragraph migration_group: custom_migration label: 'Import a text into a D8 paragraph' source: batch_size: 1 plugin: csv header_offset: 0 enclosure: '"' escape: \ delimiter: ',' ids: - id process: type: plugin: default_value default_value: bp_simple bp_text/value: plugin: file_allocation domain: arbordayblog.org source: body bp_text/format: plugin: default_value default_value: basic_html paragraph_view_mode: plugin: default_value default_value: default destination: plugin: 'entity_reference_revisions:paragraph' migration_dependencies: required: { } optional: { } |
Текст (body) нужно обработать, т.к. я хочу подгрузить/зарегистрировать картинки из старой статьи в библиотеку файлов drupal на новом сайте.
Для этого используется самописный процессор — file_allocation.
Параграфы будут созданы для каждой статьи источника, и ассоциированы с ID. При миграции статей мы будем использовать стандартный плагин migration_lookup, который позволит извлечь данные о созданном параграфе и подключить его к нашей статье.