--- /dev/null
+id: d6_vocabulary_field
+label: Vocabulary field configuration
+migration_tags:
+ - Drupal 6
+ - Configuration
+source:
+ plugin: d6_taxonomy_vocabulary
+ constants:
+ entity_type: node
+ type: entity_reference
+ target_entity_type: taxonomy_term
+ field_prefix: field_
+process:
+ entity_type: 'constants/entity_type'
+ type: 'constants/type'
+ # This value is only used in the 'field_name' process pipeline below.
+ raw_field_name:
+ -
+ plugin: migration_lookup
+ migration: d6_taxonomy_vocabulary
+ source: vid
+ -
+ plugin: skip_on_empty
+ method: row
+ field_name:
+ # Prepend field_ to avoid conflicts with base fields, and make sure the
+ # result is no longer than 32 characters.
+ -
+ plugin: concat
+ source:
+ - constants/field_prefix
+ - '@raw_field_name'
+ -
+ plugin: substr
+ length: 32
+ -
+ # This plugin checks if the vocabulary being migrated is the one used by
+ # Forum. If so, we use the machine name that Forum expects. Otherwise, we
+ # leave it unchanged.
+ plugin: forum_vocabulary
+ machine_name: taxonomy_forums
+ 'settings/target_type': 'constants/target_entity_type'
+ cardinality: cardinality
+destination:
+ plugin: entity:field_storage_config
+ dependencies:
+ module:
+ - entity_reference
+migration_dependencies:
+ required:
+ - d6_taxonomy_vocabulary