Upgrade Your Drupal Skills

We trained 1,000+ Drupal Developers over the last decade.

See Advanced Courses NAH, I know Enough
Oct 12 2021
Oct 12

Does 13 months feel like a comfortable cushion between now and the Nov. 28, 2022 Drupal 7 end of life? It’s not.
The time to get serious about your Drupal 9 migration is now. There are countless reasons why. 
Here are our top 20. 

  1. Even though Drupal 7 is technically still being supported, the Drupal community’s focus is on Drupal 9 and 10. With no particular inspiration among developers to support Drupal 7, websites that use Drupal 7 contributed modules will be increasingly prone to instability issues.  
  2. With as many structural difference as there are between Drupal 7 and Drupal 9, building in as much time as possible is an essential strategy for mitigating against unwelcome surprises that can occur during a Drupal 9 migration.
  3. Despite the Drupal 9 release date of more than a year and a half ago (June 2020), more than a half million websites around the world are still on Drupal 7. As such, there is every reason to expect that the best Drupal design and development agencies will become overwhelmed with work as the November 2022 Drupal 7 end-of-life date nears. Delaying a migration to Drupal 9 might mean settling for sub-par Drupal talent and expertise, and allowing your site to be rushed through an extremely packed queue.
  4. Drupal migration is a prime opportunity to think strategically about your site and how the architecture, design, and user experience can more effectively drive current objectives and branding. Starting the Drupal 9 migration process as soon as possible will help in optimizing every aspect of the opportunity.
  5. Every day that migration to Drupal 9 is delayed translates into another day in which your organization is not benefitting from a far superior CMS with a depth and breadth of transformative new Drupal 9 features and functionality.
  6. Drupal 9 offers game-changing content editing capabilities that far exceed what was possible in Drupal 7. The built-in visual layout builder allows for the ability to easily edit and switch up layouts, reuse blocks, and customize all parts of the page.
  7. Building upon the content editor enhancements of Drupal 8, the Drupal 9 admin dashboard features CKEditor’s WYSIWYG rich text editing capabilities, along with a configurable toolbar, quick edit feature, Layout Builder, and the modern Claro admin theme.
  8. Development and staging environment support is built into Drupal 9’s integrated configuration management system.
  9. A media library comes out of the box, allowing for the easy access to and reuse of all images and media.
  10. Establish as the leading CMS for multilingual functionality, Drupal translation interfaces for more than 100 languages allow for full multilingual support in all content and configuration. Recent enhancements include the attachment of language fields to language-aware entity objects from which language is "inherited," vs. previous public API exposure. 
  11. Better keyboard navigation is among the built-in ADA web accessibility features for users with disabilities.
  12. Olivero, Drupal 9’s new front-end theme has been described as an accessibility masterpiece.
  13. Structured data features build upon Drupal’s framework for enhanced SEO. 
  14. A  “mobile first” approach translates into a huge SEO advantage driven by Google’s transition to mobile-first indexing.  
  15. The mobile-first UI also allows for the ability to easily make updates or revisions to the site from a mobile device. 
  16. Built-in BigPipe supports faster initial page loads, along with better performance and scalability.
  17. Built-in JSON:API support allows for progressively and fully decoupled applications.
  18. The updated code base leverages the latest version of PHP, for increasingly tighter security.  
  19. Use of the most current third-party libraries and components, such as Symfony and Twig, enhance performance. 
  20. Integration with JavaScript frameworks and architecture enhancements result in greater speed. 

The Drupal organization has referred to migration from Drupal 7 as the last big migration. No further platform upheavals are expected. Future upgrades will be evolutionary, within a continuous innovation cycle that delivers enhanced features twice a year. 
Migrating from Drupal 7 to Drupal 9 is a process that hundreds of thousands of site owners worldwide have opted to not yet engage with. Despite the procrastination that is running deep and wide, the fact is, when a devoted Drupal design and development partner is guiding the migration with unsurpassed expertise and skill, the process transforms from a “have to” to a “get to.”
The Drupal 7 end of life clock is ticking. Looking for a partner who can get you where you need to be with far greater value than you could have expected? That’s what we do here at Promet Source. Questions or concerns about how or where to start? Let’s talk.

Sep 29 2021
Sep 29

Never before has the topic of Drupal content migration loomed so large. With Drupal 8’s end of life date less than five weeks away (Nov. 2, 2021), and Drupal 7 facing end of life about 13 months later, on Nov. 28, 2022, a very slim minority of Drupal site owners are not needing to think about migration right now. Latest stats indicate that a mere 5.8 percent of Drupal site owners have migrated to Drupal 9. 

The rest of the lot (28.5 percent) is facing an imminent and relatively straightforward migration from Drupal 8 to to 9, with a whopping 61.3 percent still on Drupal 7 and needing to get serious ASAP about the inherently more complex migration from Drupal 7 to 9. 

Here at Promet Source, we’ve sharpened our focus on a pulling together Drupal community resources in an effort to help fast track the migrations. 

Fact is though, for so many Drupal site owners who are making decisions concerning migrations, Drupal developers sometimes seem to be talking a different language -- and that may well have an impact on the widespread procrastination.

Our objective with this post is to cover the topic of Drupal migration for the world outside of our Drupalsphere -- answering some of the questions we hear a lot and deconstructing the topic for the vast swath of site owners for for whom acronyms such as PHP, SQL, and JSON are not household words. 

Let’s begin with some basics. 

What do "content types," "taxonomies," and "views" refer to?

Drupal Speak

What it really means

Content types

Content encompasses both text and images displayed on a website -- including photos, logos, icons, and other graphic items. 

A content type, sometimes referred to an an Entity Bundle, refers to a grouping of elements used for a specific purpose with fields for various types of information. A blog post is an example of a content type. A grouping of fields hold the data for each blog post that is created and displayed on the website. A Promet Source blog post, provides an an example of a content type with a field for an image, the author’s name, the date of publication, keywords, related posts, and styling specifications for headers and fonts.  

Migrated data needs to be classified and imported for each content type. The more content types, the more display views and migration intricacies


A.K.A. Control Vocabularies

Classification Terms

Taxonomy provides a way to classify or organize content on a Drupal site and group related content into categories. Taxonomy added to a News Item, for example, might include Taxonomy Terms of local or international items. This would allow Views to sort and create a list view of related local news items or international news items.  Taxonomy added to Staff Member content item might include Taxonomy Terms that denote departments or functions within an organization, enabling the creation of a view according to department or function.  


A View is a display of content items created by the Drupal Views module. It can be a list, grid, table, a full page or a block on a website.  Using the Promet Source site as an example, clicking “Insights” on the main horizontal navigation lists the nine most recent blog posts. This is a View that includes basic information about each post. 

There are multiple options for views such as news items that simply display titles, or with teaser content, as a carousel display, or even as an RSS feed to export items to an external source. The benefit of creating Views of content is that edits just need to be made once and are automatically updated everywhere that a View of that content is displayed. 

What are the typical website components?



Hero (featured Image)

Slider - like a hero but with changing images and messaging

Top Level Menu

Utility Links

Main Content

Left, Right sidebars


Call outs

CTA (Call to Action)


  • Blog
  • Article
  • Services
  • Products

Landing Page

  • A page that serve as either an entry point to the website other than the home page OR the top most level page for a category. Products can be a landing page that distinguishes between product types a provides links to filter options.  



What are the Acronyms that Factor into Content Migration?


JSON is short for JavaScript Object Notation, and refers to a file format for organized, accessible data storage. Its filename extension for written programming code is .json.

For a deep dive how JSON works in a Drupal migration setting, a detailed example is available on Drupal.org., that covers migration to Drupal from an external source system when the source data in JSON format. This example uses the URL source plugin with HTTP basic authentication provided by the Migrate Plus module.


XML stands for Extensible Markup Language, which defines a set of rules for encoding documents in a format that can be read by both humans and machines. For insight into the applicability of XML in a Drupal content migration setting, check out this Step-by-Step of Importing XML with Feeds Migrate


API is short for Application Programming Interface, which is a software go-between that allows two applications to talk to each other. 

The Drupal Migrate API facilitates the migration of data from a source system to Drupal. Migration is an Extract, Transform, Load (ETL) process. In the Drupal Migrate API:

  • the extract phase is called source,
  • the transform phase is called process, and 
  • the load phase is called destination. 


PHP, which stands for Hypertext Preprocessor,  is a programming language for back-end development, which is the language that Drupal is written in.  An open source scripting language that can be embedded into HTML, PHP requirements for current release versions of Drupal 9 can be found here.


CSV refers to a comma-separated values file. CSV text files have a specific format which allows data to be saved in a table structured format. The contributed Migrate Source CSV module provides a source plugin for utilizing .csv files as migration sources.


SQL stands for stands Structured Query Language. It is used to communicate with a database, and is the standard language for relational database management systems. This Drupal.org documentation page provides a step-by-step walkthrough concerning the migration of data from an SQL source. 

Considerations to kick off the migration

Migration to Drupal 9 is inevitable. It’s also an opportunity to begin realizing the benefits of a far superior CMS with a vast array of new features. At Promet Source, we're advocating a mindset shift away from a Drupal 9 migration as a "have to," and towards embracing the opportunity as a "get to," because it is

Migration from Drupal 7 to Drupal 9 is a process, but we have never known of a client who didn’t wholeheartedly agree that every speck of the effort was worth it. Migration is an opportunity to:

  • Rethink goals and your approach to your web presence;
  • Clean house of content that is superfluous, outdated, or no longer aligned with your brand;
  • Reset your content model;
  • Ensure a superior end-user experience;
  • Highlight new features and services;
  • Ensure alignment with your current brand strategy, and
  • A lot more.

Here at Promet Source, we are passionate about partnering with clients to streamline their migration to the latest version of Drupal, while adding value that opens up new possibilities throughout the process.

Questions about a Drupal migration? Ready to get started? Let us know how we can help!

About Drupal Sun

Drupal Sun is an Evolving Web project. It allows you to:

  • Do full-text search on all the articles in Drupal Planet (thanks to Apache Solr)
  • Facet based on tags, author, or feed
  • Flip through articles quickly (with j/k or arrow keys) to find what you're interested in
  • View the entire article text inline, or in the context of the site where it was created

See the blog post at Evolving Web

Evolving Web