Skip to main content


Code snippet for file entity migration

Migrating files and images into Drupal

We have already covered two of many ways to migrate images into Drupal. Today, we are going to perform an image migration that will clear after itself when it is rolled back. Note that in Drupal images are a special case of files. Even though the example will migrate images, the same approach can be used to import any type of file.

List of drush commands used in drupal migration workflows

Tips for writing Drupal migrations and understanding their workflow

We have presented several examples as part of this migration blog post series. Today we are going to talk about what happens after import and rollback operations, how to recover from a failed migration, and some tips for writing definition files.

Syntax for constants and pseudofields in the Drupal process migration pipeline.

Using constants and pseudofields as data placeholders in the Drupal migration process pipeline

So far we have learned how to write basic Drupal migrations and use process plugins to transform data to meet the format expected by the destination. In the previous entry we learned one of many approaches to migrating images. In today’s example, we will change it a bit to introduce two new migration concepts.

Examples of migrating into subfields.

Migrating data into Drupal subfields

Migrate process plugins transform data between source and destination. This gets more complicated for Drupal fields have multiple components. Today we will learn how to migrate into them and know which subfields are available.

Syntax for process plugin definition and chaining

Using process plugins for data transformation in Drupal migrations

Sometimes in a Drupal 7 to Drupal 8 migration we copy values verbatim from the source to the destination. Often, the data needs to be transformed to match the format expected by the destination. Today we will learn more about process plugins and how they work as part of the Drupal migration pipeline.

List of migrate plugins

Writing your first Drupal migration

In the previous entry, we learned that the Migrate API is an implementation of an ETL framework. We also talked about the steps involved in writing and running migrations. Now, let’s write our first Drupal migration. We are going to start with a very basic example: creating nodes out of hardcoded data. For this, we assume a Drupal installation using the standard installation profile which comes with the Basic Page content type.

Seven fresh dough balls and a rolling pin.

Drupal migrations: Understanding the ETL process

The Migrate API is a very flexible and powerful system that allows you to collect data from different locations and store tham in Drupal— it is a full-blown extract, transform, and load (ETL) framework.

Diagram of the Digital Commons.

How Stewarding the Digital Commons Keeps Your Software Secure, Stable and Innovative

We live amidst a Digital Commons - technology that is built with the principles of freedom and transparency baked into its code and design.

Stylized silhouettes of a woman and a child with a magnifying glass.

Iterative UX: Find It Cambridge presentation notes

Here are links and notes from the presentation "Iterative UX: Find It Cambridge" (most recently given at Drupaldelphia).

City Hall located at the heart of Center City-Philadelphia,PA

Agaric is Coming to Drupaldelphia this Friday

Ben will be presenting two sessions at Drupaldelphia. Come learn how to apply an Iterative UX approach to your work and how to scale community decision-making in your free software projects.

" "

How to use behavior-driven development in Drupal with Behat

Test your Drupal site's functionality in a human-readable format. Behavior-driven development is a great way to write tests for code because it uses language that humans can understand. Let's see how to implement BDD in Drupal.

A graphic of the earth engulfed in flames.

Resources for how Drupal as a service can save our livelihoods and our lives

Ben spoke most recently on this topic at DrupalCon Seattle and Drupal Camp Twin Cities, both in 2019, about how Drupal as a Service can save our livelihoods and our lives.  Here are some resources related to the talk and topic.