Customized Mapping Migration of Drupal 6 content to new Drupal 8 instance.

Note: this information applies to the Drupal 8 migration system - it should be moved out of the documentation for the Drupal 7 migrate module.

This is an example of a customized mapping migration of Drupal 6 content to a new
Drupal 8 instance. The new Drupal 8 instance has its own bundles and field instances already built out.

Example customized mapping migration module

Exporting D6 content to D7 website

Now that D6 is no longer supported, it was a must to move D6 sites I maintain to D7. This guide is the recipe to moving simple content with non-complicated CCK fields from D6 site to a D7 site.

Prepare your new site

Create all required content types on the new D7 site. Add all required fields to content types.

Migration from other solutions

This is just an outline, please help completing this page with more details.

It is quite easy to migrate from many other "media" solutions to Scald.

General purpose methods

From IMCE/embedded images modules

Get a list of used files from the text fields/from the {files} table and create scald_image atoms. Enable MEE module.

From File Entity based modules

Add an atom for each file, use hooks to create new atom when a file is added.

From File Field modules

Use Atom Reference module.

Less commonly implemented Migration methods

pre/post Import/Rollback methods

You can execute code before or after an import or rollback operation by implementing the Migration class methods preImport(), postImport(), preRollback(), or postRollback(). Each of these is called once per individual Migration - that is, if you implement preImport() in an article node migration class, it will be called after any previous migrations you're running, and immediately before the first row of your article node migration is called.

Typical actions can be the enabling / disabling of certain modules or changing configurations.

class ArticleMigration implements Migration {
...
  public function preImport() {
    parent::preImport();
    // Code to execute before first article row is imported
  }
...
  public function postImport() {
    parent::postImport();
    // Code to execute after the last article row has been imported
  }
...
  public function preRollback() {
    parent::preRollback();
    // Code to execute before first article row is deleted
  }
...
  public function postRollback() {
    parent::postRollback();
    // Code to execute after the last article row has been deleted
  }

A practical example can be found here.

Subscribe with RSS Subscribe to RSS - migration