migrate_process_array
When migrating content, sometimes you have an array of values you need to filter against known items. This module provides utilities for interacting with arrays during migration, including custom filtering.
See the README for further details.
Requirements
- Drupal 8 or 9
Usage
field_of_array_values:
plugin: array_intersect
source: some_array_field
match:
- values
- to
- match
field_of_array_values:
plugin: array_diff
source: some_array_field
exclude:
- values
- to
- match
For a given field value:
[
'a',
'bunch',
'of',
'values',
];
The array_intersect plugin would return:
[
'values',
];
Whereas the array_diff plugin would return:
[
'a',
'bunch',
'of',
];
This Module is Part of a Migration Framework
This module is part of a migration framework created for a client project in which we migrated information from Digital Measures to a Drupal site. However, the specific problems each module solves are common to migration processes in general. With the exception of Digitalmeasures Migrate, these modules are fairly generic and can be used for a variety of other migrations.
For more information on how this framework was used for a Digital Measure Migration, read:
- We Give Back: Drupal Module Framework for Migrations
- Case Study: University of Minnesota’s Provost Office
Here are the modules in the migration framework:
- Digitalmeasures Migrate
Provides a method to access Digital Measures API through Drupal. - Migrate Process XML
Reads XML and allows you to extract particular key sections using XPath. - Migrate Process S3
Allows you to download objects from an S3 bucket as files to your Drupal site. - Migrate Process URL
Allows you to manipulate URL values that are provided within the data. - Migrate Process Regex
Provides a way to use Regular Expressions in a Drupal migration. - Migrate Process Vardump
Often used for debugging, this module takes any data given to it and dumps it to the terminal output and then passes it on. - Migrate Process Skip
Provides a few different mechanisms to define what is “empty” and should be skipped. - Migrate Process Trim
This module provides a quick and simple means to remove leading or trailing characters (such as spaces) in a Drupal migration. - Migrate Process Array
Provides utilities for interacting with arrays during migration.