Browse Source

Support multiple parents on Terms.

Do not forget to add this fragment:
  parent_id:
    -
      plugin: skip_on_empty
      method: process
      source: parent
    -
      plugin: callback
      callable:
        - '\Drupal\reinstall\Plugin\migrate\source\ReinstallTermSource'
        - 'getParent'
    -
      plugin: migration
      migration: reinstall_terms_theme
  parent:
    plugin: default_value
    default_value: 0
    source: '@parent_id'
Frederic G. MARAND 7 years ago
parent
commit
ee4d3fe991
1 changed files with 8 additions and 0 deletions
  1. 8 0
      src/Plugin/migrate/source/ReinstallTermSource.php

+ 8 - 0
src/Plugin/migrate/source/ReinstallTermSource.php

@@ -68,4 +68,12 @@ class ReinstallTermSource extends SimpleSource {
     return $ids;
   }
 
+  public static function getParent($source) {
+    if (is_scalar($source)) {
+      return $source;
+    }
+    elseif (isset($source['target_id'])) {
+      return $source['target_id'];
+    }
+  }
 }