Normal view

Received before yesterday

How to Migrate From Drupal to WordPress (Step by Step)

13 June 2025 at 10:00

When I first started building websites, I thought about using Drupal. It’s a strong platform, but it was too complicated and hard to learn, especially for beginners.

That’s why I chose WordPress instead. It’s powerful, easy to use, and now, it’s what I use for all my websites.

Over the years, I’ve helped many business owners and developers switch from Drupal to WordPress. I know it can feel overwhelming to move your whole website without losing content or breaking anything.

That’s why I created this simple guide to help you migrate from Drupal to WordPress safely and easily. It walks you through each step, using methods I’ve tested and improved with others who have made the same switch.

Whether your website is small or large, I’m here to help you make the change as smoothly as possible. Let’s get started together!

How to Migrate From Drupal to WordPress

Why Migrate From Drupal to WordPress?

Drupal and WordPress may look similar. But in practice, these website builders are very different.

I’ve found that Drupal, while incredibly capable, can sometimes feel complex and overpowered.

Simple content updates start taking longer than they should. Finding the right developer to make tweaks isn’t always easy or cheap. And honestly, the backend can feel overwhelming sometimes.

In my experience, WordPress is much more user-friendly, which is why I always recommend it to people looking to make a website.

Think of it as your favorite everyday tool that’s easy to pick up and intuitive to use. It makes many tasks very easy to do, like writing and publishing a new blog post, adding an image to a page, or installing a simple contact form.

Drupal, on the other hand, is more like a highly specialized toolkit. It is precise and powerful, but it can feel like overkill for your daily needs. It can be difficult to do something that’s simple in WordPress, like setting up a custom page layout.

See my comparison of Drupal vs. WordPress for more details.

Step 1. Back Up Your Drupal Website and Link Structure

Before you start migrating your Drupal site, you need to create a safe copy of everything.

It’s also a great idea to back up the link structure of your website. You’ll use this information later to make sure you don’t lose your search engine rankings.

Backing Up Your Drupal Website Using a Module

You can back up your Drupal website easily using a module, or more advanced users can do it manually (see below).

The Backup and Migrate module makes backing up a Drupal website pretty straightforward.

Just visit Administration » Extend and you will find the module in the ‘Other’ section. Simply click the checkbox next to the module and then click the ‘Install’ button at the bottom of the page.

Drupal's Administration » Extend Page

Note: If you don’t see it listed, then the module’s files haven’t yet been added to Drupal. This is a little technical, and you may need to contact your hosting provider for support.

More advanced users can install the module by using SSH. You will need to navigate in the terminal to the root directory of your Drupal installation and type in the following command:

composer require 'drupal/backup_migrate:^5.1'

Once the module is installed, you’ll find it in your Drupal admin menu. It allows you to create backups of your database, files, or both. For a full site backup, you’ll want to back up everything.

Backing Up Your Drupal Website Manually

Alternatively, if you’re comfortable with the technical side of things, then you can also back up your Drupal site manually.

First, you’ll need to back up your website files using your hosting provider’s file manager or FTP software.

When the file manager opens, click on the public_html folder in the left menu and then select your website’s folder in the left pane. You need to right-click on that folder and create the ‘Compress’ option from the menu.

Compressing Website Files Using a File Manager

When asked for a compression type, you should select the ‘Zip Archive’ option. After your website has been compressed, you can close the confirmation message.

Next, you need to find the compressed zip file in the public_html folder. Right-click the file and select the ‘Download’ option. Make sure you store this backup file in a secure location.

Downloading Your Website's Zip Archive Using a File Manager

Next, you’ll need to back up your database using phpMyAdmin. You will find this useful tool in the account dashboard of most reputable hosting providers.

For example, on Bluehost, you will find it by clicking on the Hosting tab and then scrolling down the page.

Launch phpMyAdmin

Clicking the phpMyAdmin button will launch the application in a new browser tab.

From here, click to select your Drupal database from the left column and then click on the ‘Export’ button at the top.

phpMyAdmin export database

When you are asked to select the export method, you should select ‘Custom’. It will show you all of the database tables in your Drupal website.

To create a full backup, make sure all of the tables are selected.

Select and exclude tables

You now need to scroll down to the ‘Output’ section and select the ‘Save output to a file’ option.

For compression, select the ‘zipped’ option.

Select database backup output

Finally, scroll to the bottom of the page and click the ‘Go’ button.

The compressed database file will be saved to your computer, and you can store it safely, along with the file backup you created earlier.

Backing Up Your Link Structure

Next, you need to back up your link structure. This is important for SEO and making sure that people can find your content online.

You need to make a list of all your current Drupal URLs so that you can set up redirects later in WordPress. This way, if someone clicks an old link to your Drupal website, then they’ll be automatically sent to the right page on your new WordPress site.

I like to use a Chrome extension called Link Klipper. It’s free, easy to use, and can quickly save all the links from a website. You can easily install it in your browser using the link above.

Next, you need to visit your Drupal website’s homepage in your Chrome browser. Once there, just click the Link Klipper icon in your browser toolbar and choose the option that says ‘Extract All Links’.

Download links using Klipper

Link Klipper will do its thing and grab all the links from your homepage and the pages it can find linked from there. It will download these links as a comma-separated values (CSV) file.

When you open that CSV file in Excel or Google Sheets, you’ll see a complete list of your Drupal URLs. Make sure you save this file somewhere safe because you’ll need it later.

Step 2. Installing and Setting Up WordPress

The requirements for both Drupal and self-hosted WordPress are quite similar. You’ll need a domain name and a WordPress hosting account to start with WordPress.

If you already have a domain name and website hosting account for your Drupal website, then you can use them for your WordPress website as well.

Alternatively, if you want to move to a different hosting provider, then I recommend using Bluehost, which is one of the top hosting companies recommended by WordPress. They offer WordPress hosting and a free domain name for just $1.99 a month.

Alternatives: If you’d like to explore a few other good options, then Hostinger and SiteGround are also worth considering. They both have strong reputations in the WordPress hosting world and offer good performance. For more options, see my expert pick of the best WordPress hosting providers.

For this guide, I’ll use screenshots from Bluehost to give you a visual example of the process.

You need to navigate to the Bluehost website and click the green ‘Get Started Now’ button.

Bluehost website

You’ll then land on their pricing page, which shows you different hosting plans. Their ‘Basic’ plan is perfect for most websites.

Pick a plan that suits you by clicking the ‘Select’ button under it.

Choose a hosting plan

Next, you’ll be asked about the domain name you want to use. This is your website’s address, like www.yourwebsite.com.

You need to select ‘I’ll create my domain name later.’ This gives you time to migrate everything before pointing your domain to WordPress.

Set up domain name later

Why set up a domain later? 🤔 If you already have a domain connected to your Drupal site, then choosing this option lets you set up WordPress without affecting the live site. Once everything is ready, I’ll show you how to point your domain to WordPress.

After the domain step, you’ll need to fill in your account details (name, address, and so on) and your payment information to complete the purchase.

Bluehost will then send you a confirmation email with your login details. Keep this email safe! You’ll need those details to log in to your hosting account dashboard.

When you log in to your Bluehost account for the first time, they install WordPress automatically for you.

Now, just look for the ‘Edit Site’ button in your hosting dashboard and click it. That will take you straight to your WordPress admin area, where you can manage your new website.

Bluehost login WordPress

And that’s it. You’ve now successfully installed WordPress.

Expert Tip: Working with a different hosting provider? We have a detailed WordPress installation tutorial that goes through every single step.

Step 3. Importing Your Drupal Content

To make the migration process as smooth as possible, I’ll show you how to use a free WordPress plugin called FG Drupal to WordPress. It automates a lot of the heavy lifting involved in moving content between these two platforms.

First, you need to install and activate the plugin. For more details, see my step-by-step guide on how to install a WordPress plugin.

You’ll then find the importer tool under Tools » Import in your WordPress dashboard menu. You’ll see a list of different import options. Look for ‘Drupal’ in the list and click the ‘Run Importer’ link.

The WordPress Import Page

This will launch the FG Drupal to WordPress importer. Now, you’ll need to give the importer some information about your Drupal website so it can connect and grab your content.

The first thing it will ask for is your Drupal website URL.

Entering the URL of the Drupal Site to Be Imported

Next, it needs your Drupal database details to get all your posts, pages, and other content. You’ll need to provide:

  • ⛁ Database Host: This is usually localhost if your Drupal and WordPress sites are on the same server. If not, you’ll need to get this from your Drupal hosting provider.
  • ⛁ Database Name: The name of your Drupal database.
  • ⛁ Database User: The username used to access your Drupal database.
  • ⛁ Database Password: The password for that database user.
  • ⛁ Table prefix: Drupal uses table prefixes to keep things organized in the database. You’ll need to enter your Drupal table prefix here. It’s often something like drupal_.
Entering the Database Parameters of the Drupal Website to Be Imported

You may have written this information down when you first set up your Drupal website. Otherwise, advanced users can use FTP to find the details in your Drupal settings.php file. Or simply contact your Drupal hosting provider and ask for assistance.

Once you’ve entered all the database details, click the ‘Test database connection’ button in the importer. If everything is correct, then you should see a ‘Connection successful’ message.

Drupal Database Connection Successful

Below the connection settings, you’ll see some additional options in the importer. These let you control what gets imported, like featured images, content images, and other things.

Just leave the default settings as they are for your first import.

Import Behavior Options

When you’re ready, you can start the import by clicking the big ‘Start / Resume the Import’ button. The importer will start fetching your content from your Drupal website and bringing it into WordPress. It will also import your images, blog comments, and more.

The time it takes depends on the amount of content you have. Once the import is finished, you should see a success message.

Drupal Import Completed

The FG Drupal to WordPress plugin can also help you fix internal links.

Sometimes, after a migration, links within your content might still be pointing to your old Drupal site structure. The plugin can try to update these to point to your new WordPress site.

Scroll down to the bottom of the importer page and click the ‘Modify internal links’ button.

Modify Internal Links in Drupal Imported Content

Step 4. Pointing Your Domain Name to Your New WordPress Website

Now that your content is imported into WordPress, you need to make sure people will find your new site when they type in your domain name.

If you already have a domain name for your Drupal website (like yourwebsite.com), then you want to keep using that same domain for WordPress. You need to adjust your nameservers to point to your new WordPress site.

Your new WordPress hosting provider, like BluehostHostinger, or SiteGround, will give you the nameserver information you need.

It usually looks like a pair of addresses, something like:

ns1.your-wordpress-hosting.com
ns2.your-wordpress-hosting.com

You change these settings with your domain name registrar, the company where you originally registered your domain name.

Sometimes, your domain registrar might be the same company as your hosting provider. But often, they’re separate. Common domain registrars include companies like Network Solutions and Namecheap.

You need to log in to your account at your domain registrar’s website. Once you’re logged in, find the settings for your domain name. Look for something like ‘DNS Settings’, ‘Nameservers’, ‘Domain Management’, or ‘Manage DNS’.

For example, here is the screen you will see on Bluehost.

Managing Nameservers in Bluehost

You’ll find step-by-step instructions for many popular domain registrars in my guide on how to easily change domain nameservers.

Once you’ve updated your nameservers, it takes a little while for these changes to spread across the internet. This is called DNS propagation.

DNS propagation can take anywhere from a few hours to, in some cases, up to 24-48 hours. During this time, some people might still see your old Drupal website, while others might start seeing your new WordPress site.

Step 5. Setting Up Permalinks and Redirects

Your old Drupal site had its own way of structuring URLs. WordPress does things a bit differently with permalinks.

Because the URLs for each post will be different, anyone who has a link to your old Drupal content will end up seeing a frustrating ‘404 Page Not Found’ error on your new WordPress site.

To prevent broken links, you have to set up SEO-friendly permalinks in WordPress and redirect your visitors from your old Drupal URLs to the right pages on your new WordPress site.

Setting Up WordPress Permalinks

WordPress gives you a few different options for how your website addresses (URLs) are structured. These are called permalinks.

The ‘Post name’ setting is a popular choice. It creates nice, clean URLs that usually include the title of your page or blog post. This structure can be helpful for both visitors and search engines because it makes the URL easy to read and gives a clear idea of what the page is about.

In your WordPress dashboard, go to Settings » Permalinks. You’ll see a section called ‘Common Settings’. Find the option labeled ‘Post name’ and click the radio button next to it to select it.

WordPress' permalink settings

Then, just scroll down to the bottom of the page and click the ‘Save Changes’ button. Done!

Setting Up Redirects from Your Old Drupal URLs

Now you need to set up redirects to make sure your old Drupal links still work. To do this, you will need that list of old Drupal URLs you grabbed using Link Klipper in Step 1.

Tip: If you use the premium version of FG Drupal to WordPress to import your Drupal content, then it can automatically create these redirects for you.

To set up redirects easily in WordPress, you need to install and activate a plugin called Redirection. It’s free and it makes managing redirects a breeze. If you need help, see my guide on how to install a WordPress plugin.

Once activated, you’ll find the Redirection plugin settings under Tools » Redirection in your WordPress menu.

Add New Redirection to Your Website

In the Redirection plugin interface, you’ll see fields for Source URL and Target URL:

  • Source URL is where you enter your old Drupal website URL – the one you want to redirect from. Just include the part after the domain name, like /my-old-page.
  • Target URL is where you enter the new WordPress URL for the same page. Again, just include the part after the domain name, like /my-new-page.

Make sure the ‘301 – Moved Permanently’ option is selected for the ‘Match’ type (it’s usually the default). This tells search engines that the page has permanently moved to a new location, which is important for SEO.

Finally, click the ‘Add Redirect’ button to save the redirect.

Now, you’ll need to go through your list of old Drupal URLs and repeat these steps for each URL you want to redirect. It can be a bit repetitive if you have a lot of pages, but it’s worth the effort to avoid broken links and keep your SEO intact.

For detailed instructions, see my guide on how to set up redirects in WordPress.

Alternative: Using AIOSEO for Redirects

If you’re already using the All in One SEO (AIOSEO) plugin, or if you’re planning to use it to improve your website’s SEO, then it also has a redirection manager built in.

It’s a powerful WordPress SEO plugin that lets you easily set up full site redirects, plus it offers many other features to help your website rank higher in search results.

Enter new domain address for relocation

For example, its 404 error tracking can easily catch broken links, and you can add schema markup, custom breadcrumbs, local SEO modules, and much more.

Step 6. Setting Up Your WordPress Theme

To make your WordPress website look amazing, you need to choose and install a theme. These are ready-made design templates for your site that control its appearance, including the colors, fonts, layout of your pages, and how your blog posts are displayed.

Free WordPress blog themes

There are plenty of free themes and premium themes available for every possible niche and industry you can imagine.

In my experience, clean and simple designs tend to work best for most websites. They look more professional, they’re easier for visitors to navigate, and most importantly, they put the focus where it should be: on your content.

To help you narrow things down, I put together a guide on selecting the perfect WordPress theme. It walks you through the key things to consider and helps you avoid some common traps.

Then, you can follow my step-by-step guide on how to install a WordPress theme.

Alternatively, you can easily create a custom WordPress theme using drag-and-drop with the SeedProd website builder plugin. This is a great option if you want to perfectly match your old site’s look without writing code, giving you full control over the design.

Of course, if you prefer, you can always hire professionals to design and code a completely custom WordPress website for you.

Step 7. Install Essential WordPress Plugins

WordPress plugins are easier to install than Drupal modules. Thousands are available, both free and paid. So, I created a guide on how to pick the best plugins for your website.

But first, let me introduce you to some must-have plugins that I recommend for pretty much every new WordPress site:

  • WPForms lets you create all sorts of WordPress forms – contact forms, surveys, order forms, and more. I use it on my own websites to allow readers to contact me and gather their feedback.
  • SeedProd is a powerful drag-and-drop website builder. It lets you easily customize your WordPress design, create unique page layouts, or even build a complete custom theme.
  • AIOSEO (All in One SEO) helps you optimize your blog for better search engine rankings. It’s the most powerful SEO plugin for WordPress.
  • MonsterInsights connects to Google Analytics and makes it easy to understand your traffic and visitor behavior right inside your WordPress dashboard.
  • OptinMonster helps you create popups, slide-in forms, and other opt-in forms to grow your email list and boost conversions.

You’ll find more ideas in my list of essential WordPress plugins. It’s packed with plugins I use and trust.

Alternative: Get Professional Help to Migrate Your Drupal Website

Professional WordPress Services by WPBeginner

While many of you will be able to follow this guide to migrate from Drupal to WordPress, it’s still a pretty technical project. Maybe you’re not very techy or are simply too busy to do it yourself.

If that sounds like you, then our WPBeginner professional services team can lend a hand. We’ve helped tons of people with their WordPress websites, and we can help you too.

Here are a couple of ways we can make your Drupal to WordPress migration easier:

  • Premium WordPress Support Services: Reach out to our team anytime you get stuck, have questions, or just want some personalized help with your migration. We can guide you through specific steps, troubleshoot issues, or even take over certain tasks for you.
  • Quick Site Launch Service: Want a completely fresh start with a brand new, custom WordPress website? Our Quick Site Launch service team can design and build a website from the ground up. And we can handle the whole content migration from Drupal.

If you’re curious to learn more about these services or if you just have some questions about migration in general, then we’re here to chat! You can easily get in touch with our support team on our Website Design Services page.

Bonus: Learning WordPress

Now that you have a new WordPress website, you’ll want to learn more. Luckily, we have lots of free resources to help you quickly become a WordPress pro:

  • The WPBeginner Blog is the heart of WPBeginner. It’s a WordPress learning library packed with thousands of easy-to-follow tutorials, guides, and how-to articles.
  • The WPBeginner Dictionary helps you understand all the WordPress terms and jargon, like a WordPress translator.
  • WPBeginner Videos walk you through common WordPress tasks step-by-step, visually, from basic to more advanced techniques.
  • Our WPBeginner YouTube Channel is packed with WordPress tips, tutorials, and how-tos to help you stay up-to-date with the latest WordPress goodness.
  • The WPBeginner Blueprint gives you a peek behind the scenes and shows you our recommended WordPress setup.
  • WPBeginner Deals offer exclusive discounts and coupons on WordPress themes, plugins, hosting, and more.

I hope this tutorial helped you move your site from Drupal to WordPress. You may also want to see our ultimate WordPress SEO migration checklist for beginners or our expert pick of the best WordPress migration services.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

The post How to Migrate From Drupal to WordPress (Step by Step) first appeared on WPBeginner.

#170 – Chris Reynolds on WordPress and Drupal: Differences and Similarities

21 May 2025 at 14:00
Transcript

[00:00:19] Nathan Wrigley: Welcome to the Jukebox Podcast from WP Tavern. My name is Nathan Wrigley.

Jukebox is a podcast which is dedicated to all things WordPress. The people, the events, the plugins, the blocks, the themes, and in this case, what WordPress and Drupal have in common.

If you’d like to subscribe to the podcast, you can do that by searching for WP Tavern in your podcast player of choice, or by going to wptavern.com/feed/podcast, and you can copy that URL into most podcast players.

If you have a topic that you’d like us to feature on the podcast, I’m keen to hear from you and hopefully get you or your idea featured on the show. Head to wp tavern.com/contact/jukebox, and use the form there.

So on the podcast today we have Chris Reynolds. Chris is a developer advocate at Pantheon, where he brings nearly 20 years of experience in the WordPress community, as well as deep involvement with Drupal and open source technology at large. Prior to his advocacy role, he worked at some of the top WordPress agencies like Human Made and Web Dev Studios. He’s been active at events like DrupalCon, PressConf, and Word Camps.

In this episode we set aside the usual WordPress only focus, and turn our attention to two CMSs, WordPress and Drupal. What makes them tick, where they excel and where they might have something to learn from each other.

Chris draws on his unique perspective working closely with both platforms as Pantheon is one of the few hosts with a 50 50 split between WordPress and Drupal sites, and has a significant footprint in both ecosystems.

We discuss the similarities and differences between the two open source CMS communities, from the mechanics of flagship events like WordCamps and DrupalCon, to the ways these projects organize their contributors and support community initiatives.

Chris explains how Drupal’s model with its association run funding, and project governance, compares to WordPress’s approach, including how each community approaches plugin and module development, and what role agencies and companies play in contributing to Core and the broader ecosystem.

If you’re curious about how open source projects organize themselves, how their communities navigate growth and challenge, and what WordPress can learn from Drupal, and vice versa, this episode is for you.

If you’re interested in finding out more, you can find all of the links in the show notes by heading to wp tavern.com/podcast, where you’ll find all the other episodes as well.

And so without further delay, I bring you Chris Reynolds.

I am joined on the podcast today by Chris Reynolds. Hello Chris.

[00:03:20] Chris Reynolds: Hi. How’s it going?

[00:03:22] Nathan Wrigley: You cannot see, dear listener, what I can see. Chris has the most amazing setup where he’s doing the recording. I guess it’s an attic or something like that, but it looks like the Starship Enterprise from where I’m sitting.

[00:03:34] Chris Reynolds: I’m working on that.

[00:03:34] Nathan Wrigley: Yeah, it’s really nice. Chris is joining us today and we’re going to have a conversation about the WordPress community. The things that we do well, and perhaps the things that we could improve. And we’re going to probably use Drupal as a comparison.

Before we get into that, Chris, I know it’s a dreadfully banal question, but it’s always good to scope out where you are and where you stand with WordPress and Drupal and the companies that you work for. So just a moment really to give us your little potted bio of who you are and what have you.

[00:04:04] Chris Reynolds: Sure. My name is Chris Reynolds, I am a developer advocate at Pantheon. I was formerly a senior software engineer for Pantheon for about three years, before joining the developer relations team around August, right before WordCamp US in September last year.

I’ve been in the WordPress community for close to 20 years. I think I’ve gone back to my first blog posts and my first, like talking about technology that I was using. And I think that I’ve found references to using WordPress in some capacity back in 2005, so almost exactly 20 years.

But even before that I was really interested, like as a side hobby in just open source software, playing with Linux and playing with other open source community projects that I found I was really a big fan of one called Ampache for a long time, which was a music sort of library app thing written in PHP. That was really cool. I think it still exists even.

But yeah, so I’m a developer advocate at Pantheon. That means I do a lot of these sorts of things, talk about best practices, write a lot of blog posts, get in a lot of trouble, not really, and go to events and stuff like that. So I was at DrupalCon in March. I was at PressConf last month. Probably doing stuff this summer and in the fall.

[00:05:14] Nathan Wrigley: Just to lean in a little bit on the Pantheon side of things. Pantheon, a hosting company, but very much aligned in two worlds, maybe more than two. But from my perspective, I used to use Drupal exclusively until about 2015. That was my CMS of choice for many, many years. I think Drupal 4, and then finally I jumped ship at Drupal 8 over to WordPress and have been that consistently.

But Pantheon was around as what felt like at that time, so we are going back more than a decade, the only sort of managed Drupal host, but it definitely had a WordPress side to it as well. Can you just speak to that for us for a moment? That is Pantheon’s sort of MVP, isn’t it? It handles managed hosting for both of those platforms. And maybe there’s more, I don’t know.

[00:05:57] Chris Reynolds: Yeah. I mean, I think that from a platform perspective, we obviously do host Drupal and WordPress. We also can host like Next.js and sort of front end sites. But the sort of hidden Pantheon magic is in the kind of DevOps, WebOps we like to call it, layer that happens like somewhere between pushing code and the code being a thing that like site managers and editors and things like work with, right? So automation tools, and we were one of the first providers that used Git by default. Now that’s not such a big deal anymore, but like that was a big thing within Pantheon for a really long time.

When I was a developer, the first time that I used Pantheon as a developer when I was back at WebDevStudios was, the thing that was the killer feature for me was we have a thing called Multi Dev, which is, each site has a development, a test, and a live environment. So everybody gets those three things and we have a very specific sort of workflow. Code goes to dev, to test, to live in that order. But we have these Multi Devs, which are entirely separate containers where you can build, you can do all your feature development on a branch in a Multi Dev and see what that looks like before merging it into dev.

It sounds like maybe not that much now, but I know when I was back in agency life and even when I was working at Human Made and we had built our own sort of stack that had this very similar kind of system, we didn’t have Multi Dev because spinning up new containers for sites that you’re just going to destroy at some point in the next couple weeks or days anyway is expensive and hard.

And so what that meant was the master branch, or the development branch, of all of your code is always really messy and dirty, and you want to keep that away from the code that is going to production, right? Because that’s where your experimental code is. Maybe you didn’t back it out entirely. That’s where like a whole bunch of weird database stuff is going. That’s like the junk, right? So you want to keep that separate from like your staging branch and your production branch.

And with Pantheon, the idea is your development branch is just where your finalised code goes, because you can do all that testing in a separate environment and then when you go from dev to test, it’s not a headache, it’s just this is production ready code, basically.

[00:08:10] Nathan Wrigley: Yeah, I remember my recollection of Pantheon was that it was one of those platforms that, well, platform really, it felt more like a platform than a host, if you know what I mean? It just offered more as a layer on top of the typical host that you might find.

However, you also do a whole bunch of stuff around the Drupal space, but also the WordPress space. I’m just curious, maybe you don’t have this information, but maybe as a developer advocate, you do. What would you say, as a percentage, does Drupal represent as opposed to WordPress? You know, is it like an 80, 20 split, a 90, 10, a 50, 50?

[00:08:40] Chris Reynolds: We’re almost exactly 50, 50.

[00:08:42] Nathan Wrigley: Interesting.

[00:08:43] Chris Reynolds: And we’ve actually honestly been 50, 50 for about five-ish years, five or six years.

[00:08:48] Nathan Wrigley: So does that mean that in the Drupal side of things, okay, dear listener, WordPress as a CMS is a giant, it’s a leviathan of a thing, you know. Occupies a massive amount of the market share. Drupal I think is somewhere in the region of, I think it’s like 1.2% or something like that.

[00:09:05] Chris Reynolds: Yeah, we might be creeping up to two-ish, but yeah, it’s pretty low, yeah.

[00:09:09] Nathan Wrigley: That then implies that you as a company have, you’ve got your foot on the pedal more on the Drupal side of things. Maybe the people who are building clever things on top of Drupal are using you much more. You’re a bigger player in that space than you are inside the WordPress space, even though it’s, you know, the same in terms of revenue. As a community endeavor, Drupal probably means a lot more to you than WordPress maybe.

[00:09:32] Chris Reynolds: Yeah, I mean definitely going to DrupalCon for my first time this last March, it’s definitely, so there’s Acquia, which is essentially Drupal’s version of Automattic. Acquia is a company that was founded by Dries, who is the founder of Drupal, and very much like managed Drupal hosting the same kind of thing that Automattic is into, and a lot of the sort of same ideas, at least from a, where it sits in the ecosystem.

But, you know, you go to a WordCamp and you see the big Automattic booth and you’ll see a couple other sort of bigger hosting booths. At a DrupalCon it’s like, there’s the Pantheon booth and there’s the Acquia booth, and then there’s a bunch of little things. We’re definitely the kind of headliners because between the two of us, I think probably we do own most of those Drupal sites that exist in the ecosystem. But we’re definitely a bigger fish in that pond, than perhaps the WordPress pond. There’s also a lot more fish in the WordPress pond.

It’s an interesting thing, like for me coming to DrupalCon for the first time, to see just what Pantheon’s footprint is in contrast to when I go to WordCamps. And, you know, we were big in WordCamps for a long time, and then we kind of pulled back a little bit, and then the intervening time it’s I think felt by the community like, well, who are you? Where did you go? We’ve gotten sort of feedback from folks being like, I used to think about Pantheon, but like it’s been a long time, you laid a lot of people off. Why should I care anymore?

And that’s, you know, part of my personal goal is to say, no, this is why you should care. That’s one of the things that excited me of joining the DevRel team was to go back to our roots and go back into the community, and we still have a really good product that I believed in when I was a developer and I still think is really good as, you know, obviously I think of it as a developer advocate. But like I’m here because I like the thing. I think we have a good thing.

[00:11:19] Nathan Wrigley: Do you basically have the exact same platform for both of the CMSs? So I know there’s all the other stuff that you do, but let’s just concentrate on Drupal and concentrate on WordPress, those two things. Do you basically have the exact same platform? Or is there some nuance that you can do this on WordPress because of, I don’t know, WP-CLI or the REST API or whatever it is that you can’t do in the Drupal side? In other words, if I sign up for a Drupal account, do things look different, behave differently, or is it broadly the same?

[00:11:45] Chris Reynolds: It is broadly the same. There is sort of individual differences but they’re very minor. And honestly like, in many ways, I think that when Pantheon, and this is before my time, obviously, but I think when Pantheon jumped into the WordPress boat, it was really more of a, well, we have this stack and we’re really good at this thing, and WordPress is also a PHP application that has a lot of the same requirements, surely we can just run the exact same stack for WordPress.

And what’s sort of evolved over time is like, well, that’s like 80% true, but it’s the 20% that’s really important. And if you just go into building WordPress sites or hosting WordPress sites with the same mentality as you’re doing Drupal, well, you are going to run into a lot of the growing pains that we ran into, right? Drupal from like a database perspective is far more efficient. The queries are much shorter because the way that it’s structured is more efficient than WordPress. WordPress, you kind of have to do more sort of optimisation on top. So those are things that we needed to figure out.

The Drupal space sort of moved toward Solr as their sort of search tool of choice, which is a project from the Apache project. WordPress went into Elasticsearch. So trying to convince a WordPress team to use Solr, in fact, a pretty old version of Solr, is kind of pulling teeth. Like, well, why would I do that when I’m doing Elasticsearch for everything else? I don’t know why you would do that, honestly. Like, you should probably use Elasticsearch.

And so we’re like actually going in, that’s a project that’s on the roadmap as well finally, it’s something I’ve been talking about for like three years internally. There’s little nuances. Drupal obviously since version eight has been using Composer as a fundamental part of how the CMS just works. Whereas WordPress, you’ve got some people that are using Composer, in fact, last time I was here, two years ago, I was talking about Composer. And I don’t know that the adoption of Composer has really changed much in the WordPress ecosystem since that time.

I would like to say that it has. I still think that you should be using Composer. Throwback to the last WP Tavern Jukebox podcast that I was on about Composer. But yeah, so there’s little differences and I think that that’s, there’s not anything from a platform level where your experience is going to be that much different.

[00:14:00] Nathan Wrigley: Yeah. If you were to take a look at the Pantheon platform, I think quickly poking around on the site, maybe the pricing page or something would give you an intuition that really you are kind of more for the sort of enterprise level, I think would be fair to say. You know, you are trying to get the bleeding edge out of the websites that you’ve got, and so it’s, high traffic, that kind of thing.

But the endeavor today really is to put all of that code stuff to one side and get into the community side of things. So just to reiterate, we threw around a couple of words there, and maybe the listener doesn’t really know that even there’s a WordPress community or a Drupal community.

There really is. There’s just hundreds, maybe thousands of people who attend events, they might go to a local thing, which we might call them Meetup on the WordPress side of things. I don’t know if there’s similar things in Drupal. But then there’s these bigger events, which we’d call WordCamps, and then there are bigger ones of those which are kind of flagship WordCamps.

There’s one in the US, there’s one in Asia, and there’s one in Europe. They happen each year. And thousands of people show up and inhabit the same space, listen to presentations, hang out in the hallway.

And then you’ve got the same thing happening on the Drupal side. It’s called Drupal Con, but forgive my ignorance, I think the DrupalCon thing is a once a year thing and it moves around the globe. It’s not necessarily in the same space. Have I got that about right?

[00:15:15] Chris Reynolds: It’s more than once a year. It’s actually the equivalent. So DrupalCon is the equivalent of flagship WordCamps. So there’s a DrupalCon, there was a DrupalCon US in Atlanta this last year. There is going to be a DrupalCon Europe in, where is it? Maybe Vienna, in the fall. There’s a DrupalCon Asia that’s just starting to get fired up. That’s happening I think in, the next one is like 2026, I believe. I think they just had their first one. So very similar, like the Cons in the Drupal space are equivalent to the flagship WordCamps. There’s also DrupalCamps in much the same way as there are local WordCamps.

I feel like in the WordPress space, a lot of the local WordCamps kind of, they either blew up and got super big, or they kind of fizzled after Covid, right? I don’t have a lot of local camps. I don’t see a lot of local camps anymore. I do see those things happening a little bit in the Drupal space, or at least starting up again.

[00:16:08] Nathan Wrigley: Yeah so, what we’re basically painting a picture of here is that we’ve got two bits of software which basically are trying to achieve the same thing. They’re a CMS. They’re trying to make it so that non-technical, as well as technical people, can run a project and put it online. Whether that’s a website or an e-commerce solution, whatever it may be, you’re trying to get your stuff out onto the internet. And both of those things will work.

But also, behind the code is a bunch of people who are willing to go and hang out in the same place, the community, if you like, attend these events. And so there’s massive similarity. In fact, you know, if you’re an alien landing, I suspect that you wouldn’t really know that the two things were different. Okay, there’s different advertisers in the hall and there’s different logos and things, but broadly they would probably look really similar.

However, in the more recent past, and if you don’t know the story, I’m not going to go into it too much here, but you can figure it out by looking at various news articles in the WordPress space and what have you. The WordPress community has really been pulled in different directions, let’s say that. And it’s curious because no sooner had this happened than some of the more prominent people, Dries Buytaert, who is the founder of Drupal, put out a piece, really as a way of kind of offering, look, this is what Drupal do. We know you’ve got on the WordPress side things that are not working out for you. Here’s our model.

And far be it from me to say whether that is the perfect system. I don’t really know it, but I was just curious to get your thoughts on what that is. And that’s going to really occupy the majority of the rest of this podcast. What the Drupal community looks like. What you believe it does well. How it does things differently. So let’s start there. Let’s start with Dries’, what he was telling us about. How does Drupal, the community, how does it do things differently in terms of, I don’t know, events, the access to the code? So yeah, a conversation around that really. So I’m just going to throw it over to you, Chris. How is Drupal different than WordPress on that level?

[00:18:05] Chris Reynolds: Well, I was saying before we got on that I kind of had a crash course in Drupal when I went leading up to, and then immediately following going to DrupalCon. Part of that crash course was at DrupalCon, they actually have a community summit. It’s similar to like, in WordPress we’ve had sort of community summits before. At DrupalCon it was really more of like a track, with like presenters and like also conversations. It’s like space for chatting and hanging out with people.

But mostly, mostly it was like community related talks in a space, talking about what’s working, what’s not working, as well as a sort of a get to know you sort of thing. And that was really helpful. I also did homework before the event in watching a couple of Dries’ last Dries Notes. So Matt has State of the Word, Dries has Dries Notes, which is just like keynote. It’s basically the same thing, like the same state of the CMS, right?

I caught up on what was going on in Drupal before the Con. And one of the things that I learned about, and then I followed up and dug into the history a little bit, was we have the same problems, right? WordPress and Drupal have the same fundamental sort of issues from both a contribution standpoint as well as a just organisational, managerial management kind of standpoint.

And Drupal, or Dries, just kind of got to a point sooner where he’s like, well, I can’t do all of these things. So the Drupal Association, and I’m sure there’s some Drupalistas that are going to correct me on my history, but as I understand it, the Drupal Association was initially formed to sort of manage events, because Dries knew that they needed to have events. They were having events, they started off just similar to WordPress, small camp things. And they started getting bigger and Dries is like, well, I can’t do all of the management stuff of this, so I need to like do something, create an organisation that can do that stuff.

And that was where the Drupal Association first was founded, to sort of manage that thing. And then over time, that evolved into being able to fund, or kind of oversee, directions for where, more of like a community representative in the general sort of CMS development ecosystem, right?

There is a board. They are elected by the community. They are paid. They manage events, but they also, all of the money that is made after expenses and stuff from DrupalCons and donations and whatever, they have the authority to direct into whatever projects they think would be most valuable for the evolution, or the fulfillment, of the ideals of the Drupal software, right?

So Dries says, I want to do a thing, and he can go do that thing. The Drupal Association is like, well, I think that what we really need is this kind of thing, and we’re going to devote some of our resources that we have into hiring some folks to work on that thing.

So, most recently, where you can kind of see this in action is there’s been a lot of hype about Drupal CMS. That is a thing that exists because of the Drupal Association, because the Drupal Association saw, okay, I mean, I assume, I’m reading between the lines. But I assume that you can’t ignore the sort of declining line of Drupal in the broader ecosystem of CMS usage. But also, there’s been a really big problem since Drupal seven of a lot of the sites on Drupal seven remain on Drupal seven.

Drupal seven should be end of life by all accounts. Everything else up to the current version is end of life. Drupal seven isn’t, because there’s still, it’s now just under, but it’s still close to 50% of Drupal sites are running Drupal seven. It’s a version of Drupal that’s about 10 years old.

And the reason why, there’s so many people. Drupal historically has always been a thing where, when a new version came along, you kind of killed your old site and rebuilt it in the new version, because it wasn’t sort of backwards compatible. WordPress has gotten around that by just remaining backwards compatible all throughout its history.

Drupal seven to Drupal eight was the first version to introduce Composer. We talked about Composer and how a Composer’s been part of Drupal for a really long time. that was the cutoff. So that was a pretty big shift. And there’s a lot of people, teams, organizations that have not made, or have been reluctant to make that shift because it’s a, it’s a rebuild. It’s a full site rebuild.

It’s not just, we can just migrate the thing over. You have to rebuild your site. You do need to migrate your stuff over, but also you need to rebuild your site. So in the intervening time, WordPress has gained adoption and acceptance and grown into 43%. And so now we’ve got these Drupal seven sites where it’s like, well, we need to rebuild anyway. Do we rebuild the site in Drupal 10, 11? Or do we rebuild the site in WordPress where I’m never going to have this problem ever again.

And that’s where a lot of that like, bar graph, a lot of those sites have moved to WordPress. Some of them have stayed on Drupal, but it’s a declining number, right?

So obviously, folks inside Drupal see this and know that it’s happening, and know that they need to do something about it. So Drupal CMS is basically like a layer on top of the latest version of Drupal, which is 11. It’s got a far nicer installation screen. I wrote a blog post about this on the Pantheon blog, I think. It’s got a far nicer installation screen, that actually walks you through, stepping through like what type of site, what type of content you want to have on your site. To actually get you thinking about the site that you’re building before you just hit install. Which I find to be amazingly refreshing.

And then beyond that the admin interface is far less cluttered. I know one of my personal gripes about working with Drupal, even up until, up until now, like up until before Drupal CMS is that there’s too many buttons, there’s too many menus, there’s too much stuff. Like, I don’t know where stuff is.

This feels a lot more familiar, partially because I think it kind of resembles the WordPress admin a little bit. You know, sidebar on the left, menus. And it feels just more, more familiar to me. And then also they have built in some new architectural things like, recipes are a thing where, a recipe, Drupal has modules, WordPress has plugins. Modules generally need a lot of configuration, to get them actually working.

When you install a module, it’s not like it just works outta the box. A lot of WordPress plugins, you install a plugin, it just works outta the box. So a recipe is like, here is, maybe a collection of modules, maybe a specific module, but it’s probably a combination of a bunch of different modules, but also the configuration that goes along with them.

So when you install a recipe, it’s like, here’s the stuff that you probably will need. You’re most likely to need this stuff in this order, configured with these settings, and then you can do whatever you need after that. But like, here’s the go bag and now you can move on. So, one of the really interesting recipes for Drupal CMS is the SEO recipe.

And that is interesting because they’re using a Yoast module. The Yoast module is literally taking the JavaScript of Yoast SEO from the WordPress plugin and throwing it into Drupal. And what’s fascinating about that is it doesn’t have all of the other stuff that comes with the Yoast plugin, it’s just the traffic light system, and the scanning the text system and it’s, so it’s the best possible implementation of Yoast that I’ve seen because it’s all of the good stuff.

They’ve also built an AI recipe. And that’s interesting because when that is configured, you can actually talk to an AI chat bot inside your Drupal instance and ask it questions about Drupal or about your site. You could say, hey, I need to create an event content type. I’m gonna be hosting events. They’re this type of thing. I need to have a, like a, date picker and whatever, and we are taking attendees and you can tell that the chat bot that that’s the thing that you need. And it will, to the best of its ability, build that content type inside Drupal for you.

So the WordPress equivalent is, I have a podcast and I need an episode post type. I just talk to a chat bot, and it magically creates that episode post type for me with like the Gutenberg blocks I need. That makes it an audio format or whatever. And, it’s just there for you. It’s like, great, thank you chat bot. As a WordPress developer, I think that’s really cool. Because that’s kind of the thing that I want, is like I know how to do some things, but I really don’t know any of the buttons and gears and gizmos in the Drupal admin.

But if I have a chat bot to sort of help guide me through, I know I can figure out the rest of the way, or I can see how it did the thing, and I can figure out, oh okay, so that’s what I need to do. And so all of these things are geared toward the idea of just getting more people using Drupal and lowering the barrier to entry.

Because one of the big things with Drupal is it’s always been really developer centric, really highly technical, and you need sort of skilled individuals to even just manage the site. So if we lower that barrier to entry, you can target the people that are already using WordPress, the sort of content level people or the site administrators that don’t have a lot of technical experience.

That’s all like basically because the Drupal Association put money, funding that they had into backing these very specific projects.

[00:27:25] Nathan Wrigley: It is kind of a curious idea, isn’t it? It’s like a subset of the CMSs capabilities put into this one project, Drupal CMS. Which has like a target audience in mind. So it’s like a blogger, or a podcaster or something like that. You know, it’s for content creators. That was the message I got from when I read all of the, the marketing bits and pieces that came out.

But also addressing the need for it to look nice. That was always an area I thought WordPress excelled at. When you logged into the WordPress admin, it was night and day looking at a Drupal admin. Everything was consistent. Everything looked modern and clean and easy to understand. On the Drupal side, it was, it was much more difficult to understand. But also things like updating plugins. Backwards compatibility on the WordPress side, always much more straightforward. On the Drupal side, much more difficult.

And so this is such a curious experiment. Putting it into the hands of people who might want a blog, or whatever it may be, and hopefully making it more straightforward. And the website for it, I will link to it in the show notes, it’s just so kind of modern and appealing and friendly and, Drupal never, for me at least when I got to Drupal eight, for the exact reasons that you described, that’s all of my sites would have stayed on Drupal seven.

It definitely wasn’t that kind of warm and fuzzy welcome to everybody kind of thing. But now it really look like it’s leaning into that. But getting back to your main point, that was funded from the inside by some, facets, some internal mechanisms, some body inside the Drupal Association that decided that’s what we need to do. This is where the money’s going. But are you saying that decision making was divorced from Dries?

[00:29:02] Chris Reynolds: Dries leads the technical architecture. And Dries will like say we need to do a thing. And he may be personally involved in the leadership of doing that thing, but mostly he’s like at a director level. Like, go my people and go forth and do stuff. And the Drupal Association says, okay, well one of the things that Dries said we need to do is X. So how can we make X happen? And in the case of recipes, it meant getting agencies and people from agencies involved. Create like a coalition. Like there’s a bunch, it wasn’t just one agency. It was like a bunch of people from different agencies are working on this thing together. Which is another thing that I find really interesting about the Drupal ecosystem.

I have thoughts about that too. But in this context, yeah, I get a bunch of different people to work on this thing. Um. Whether it’s the SEO recipe. Whether it’s the AI recipe, and they, I think the way that it sort of broke down is, and it might have been even Dries that conceptualized the idea of recipes and it’s like, okay, go out and implement this thing.

But when they did, it was like, okay, if we’re gonna do this thing, we need these types of recipes from the get go, from day one. We need SEO, we need whatever. We need AI, we need content things, so that people have an idea of what a recipe is and can start building their own recipes.

[00:30:15] Nathan Wrigley: So they’re bound into it? You can’t install Drupal CMS without those things. They’re just there.

[00:30:20] Chris Reynolds: It supports the recipes, and in the installation process, when you’re doing the Drupal CMS installation, that screen that I was talking about, where it’s like asking you the type of site you want to build, those types of sites in quotations, correspond to sets of recipes that align with each of those things.

It doesn’t ask you about AI in the installation screen, but it does sort of say like, oh, do you want this type of content or that type of content? And then we, based on your selection, it automatically installs those recipes for you.

[00:30:48] Nathan Wrigley: So it’s installing things based upon a wizard at the beginning, but the principle being though that you the end user, not really interacting with anything apart from oh, I would like that. Yes, please. I would like that. And then you finally get to the end of the wizard, wait for a few moments. The modules get installed, activated, and they’re pre-configured to behave in a way which is likely to be the best that you can get.

[00:31:08] Chris Reynolds: To get you as close to what you want as possible. And the goal, the roadmap, is Dries wants to actually take that one step further, and do sort of site templates where if a recipe is a collection of modules and configuration, a template would be like, I want to build a real estate site. So I download this template, or I install this template and then click a button or two and it gives me a real estate site with the configuration that I might need to have a real estate site.

And obviously I can go in and customize things, but I have a starting point. One of the things that I heard a lot when I was talking to people within Drupal, among other things, there’s not really a marketplace as much for stuff, for software, for add-ons in the way that there is in WordPress. And there’s not really in particular, there’s not really the same sort of like theme or a repository, or a place to go for commonly used or shared themes in the way that we have the Themes Repository. Mostly you have like the default things and then you’re building your own.

So, as a user, having a template that maybe comes with a theme that is specifically tuned for that type of site is a really big win, because there really isn’t an alternative in the current ecosystem within Drupal.

[00:32:23] Nathan Wrigley: Yeah, that’s, really worth leaning into because again, please interrupt me if what I’m about to say doesn’t actually match reality anymore. But when I was using Drupal, there was basically no commercial plugin system. Everybody had kind of leaned into the same thing for the same problem.

So if you wanted to put a form on your website, there were a few, but there was this one called Webform, and it was just the one everybody leaned into it. And so rather than in the WordPress space where you’ve got, you know, you’ve got a few repository ones that are free and easy to use, and then you’ve got the commercial ones that you can pay for and they add different features and support levels and all that kind of thing.

In the Drupal space, it felt like there was just this one kind of community endeavor to do the thing. Yeah, so if you wanted something to display data, Views was the thing you used. The Views module, and I think that did actually get rolled into Core. So it’s there. My point being, there isn’t this sort of, shattering is the wrong word, but in the WordPress space, there’s often a dozen, more than a dozen, there’s multiple alternatives. So you have to go and find the right thing.

In the Drupal space, it feels more like, okay, for that problem, we have this module, and everybody leans into it. So I’m presuming that all the people who contribute in the community to the code and what have you, they’ll all finesse that version. But that means therefore, that when you come to build the CMS, there’s basically this one way of doing it? Okay, if you want forms, we’re going to use that module. And if we’re going to add this feature for real estate or what have you, here’s the modules that we’re going to add in. And the jigsaw of those modules will make it work. And that’s different from WordPress. WordPress has much more leaned into commercial plugins and kind of figure out which ones you want for yourself.

[00:34:04] Chris Reynolds: Yeah, that was one of the things that I didn’t know going into DrupalCon that I learned while I was there. It’s a really different approach, and I actually kind of appreciate the Drupal model because the community is built around more of an idea of, if I build a form plugin and you build a form plugin, and mine is the defacto form plugin or.

In the Drupal space, it’s really more of a, well, let me talk to you and see what ideas you have that we can bring into the canonical one and just collectively like integrate those things. And that’s, that is a thing that happens more often than not in Drupal. That’s why you don’t see the competition, the competing modules for different things.

Because if you had a competing thing, or you had a different idea, you would contribute it to the one module that does that thing. Or if you had a different thing, then you might be invited to do the same, right?

In the WordPress space, it’s like I want to protect my form module or my form plugin because right now it’s free, but tomorrow I might want to sell it, and I want to keep my intellectual property to myself and not contribute because, you know, I might wanna make a buck on this later.

And, I kind of like the other thing better because it’s more, it is more of a community. Like I get like wanting to make money and everybody wants to make money and have a form plug in. Like, that’s great. Like I’m not going to say Gravity Forms shouldn’t exist or anything like that. Gravity Forms is amazing. But I do think that building an ecosystem around contributing to a collective, or a community based solution for the thing, where everybody has a, a say or a seat at the table, is a really, I don’t know, possibly overly idealistic, but very optimistic sort of view of how we can contribute to software.

I find it really nice. Like it feels good. Like it feels less like we’re all trying to grab our little piece of territory, you know?

[00:35:53] Nathan Wrigley: It feels to me like that moment when you first install Linux. And you realize, wow, there’s a free OS that I can put on my computer. And there’s just something quite remarkable about that. That a bunch of people got together and, really pointed everything at this one solution. I suppose that is the choice that you’re going to make. Really, that there is something right in there.

You know, the commercial side of WordPress has probably been its single biggest accelerator. The fact that people could build businesses on it. And they could have a living. They could obviously refine and finess and dedicate real time entire lifetimes, in many cases. Get staff on, support staff and what have you. Pay all of those people because they’ve cracked this nut and everybody wants a piece of it.

Whereas on the Drupal side, it’s much more, let’s go for egalitarian, let’s say that. But it, also, I suppose, means that at the moment where something doesn’t work you probably have to either understand how to maintain that yourself or hire a developer.

So there’s a bit of a trade off there. And I presume, like I said, I imagine that’s why there was this acceleration of WordPress’s popularity because the people who maybe were buying these plugins had that intention, I just want a website. I don’t want to learn how to code. I’m not interested in that.

I can see over here, look, I can buy that. It’s $97 a year. That’s perfect. That’ll satisfy me perfectly. Whereas maybe more on the Drupal side, it’s okay, that kind of works, but not entirely. I now need to make it work and obviously the community can do that.

So that leads me then to the next question, which is, who the heck builds Drupal? So in the WordPress space, if you’re listening to this, you probably have an understanding of that. There’s a lot of volunteers, but there’s also a lot of companies that will dedicate a proportion of their time. We have this idea of Five for the Future. And so 5% of whatever it is that you want to give, be that time or money, or what have you. And so there’s this idea of community massively, but also corporations, businesses, putting time in. Is it the same basically on the Drupal side? Is that how it works?

[00:37:51] Chris Reynolds: Yeah, largely. One of the things that I think you’ll notice that is a little bit of a distinction between WordPress and Drupal, from the events again. Is going through like the showroom, the sponsors floor. And at a WordCamp you see the hosts obviously, but then you see a lot of like plugin development shops, and that’s pretty much what I would expect, right? Big plugin or theme development shops and WordPress hosts. And a lot of the WordPress hosts are doing plugin development, and like, that’s sort of the thing.

In Drupal, and at DrupalCon, obviously we have the hosts. And we had a, I mean, CKE Editor was there. That was kind of weird to me. I don’t know, like it’s in Drupal. It was weird to have like a library have a booth space. That seemed weird to me. But like it’s a lot of agencies, because agencies are the ones that are doing the work, and I’ve never seen an agency or maybe not since very small, like local WordCamps, have I seen an agency with a sponsorship, a booth space at a WordCamp.

But that is, that’s where it is. And it’s agencies that do a lot of that Core contribution, because they’re also in the weeds working with clients and building these things for their Drupal customers. And so like, the SEO recipe that I was talking about, like at DrupalCon we, Pantheon has booth demos. Acquia also has booth demos, which means we can talk about, like do demos of our platform, whatever. What we actually did was bring in guest speakers from like agencies and universities and whatever that are actually using Drupal and Pantheon and to talk about their implementation of the cool stuff that they’re doing, because that works better.

And one of the people that I talked to was about the SEO recipe, and he is at an agency and he worked with other people at other agencies, competing agencies even, to make this SEO recipe. So it’s, that’s where the contribution comes from. But again, like it’s the same sort of thing.

Dries said 10 years ago, wrote a blog post about the maker taker problem, as he defines it. And then again in September, in relation to the current state of things in the WordPress ecosystem, because that’s a thing that he’s been thinking about for a long time. It’s obviously a thing that Matt’s been thinking about for a long time.

Like it’s not, again, we’re not that different. We have the same fundamental problems. At the Community Summit at DrupalCon, one of the topics of conversation was getting more people involved, a younger generation involved into Drupal development, which is the exact same conversation we’re having in WordPress as well.

Like, how do we appeal to a younger audience? It’s all the same stuff, right? And there was at some point like a contribution like pie chart. Again, similar to the pie chart that could be displayed at a WordCamp. You know, Automattic does a big chunk of that pie chart.

And then you’ve got, you know, maybe Google does a smaller part of that pie chart and maybe like Bluehost or whatever. Similar pie chart. Acquia does a lot of the big part of the, of that pie chart. And then like other agencies are noted around, and then there’s like an other category, right, of just like individual contributors. It’s a very similar breakdown.

[00:40:47] Nathan Wrigley: It’s interesting because obviously you alluded to the fact that WordPress has been in a state of flux since September. But Dries, I presume prompted by the situation that arose out of WordCamp US. He wrote a piece very much timed after that. So I presume it was in, there was some sort of correlation in his head. And he was laying out how Drupal have, not solved, but how they just have a different approach to that. And I can’t remember every single detail, but there was some curious examples in the Drupal community, like this kind of, I’m going to say pay to play thing.

In other words, if you as a company, let’s say Pantheon may fit into this perfectly, if Pantheon steps through certain hoops and can prove that they did this thing and this thing and this thing for the community, for the Drupal project. If you step through those hoops, you then get, kind of, merit on the other side.

You can, for example, turn up to DrupalCon as a sponsor. My understanding is that maybe it’s only certain tiers, I’m not really sure. But you can’t sponsor DrupalCon unless you have jumped through those hoops. And we don’t really have anything on the WordPress side like that. We have Five for the Future, but it’s hard to pin down. It’s hard to figure out who did what and what have you, because there aren’t the same sort of goalposts, but it feels like the goalposts are a bit more nailed down on the Drupal side.

[00:42:03] Chris Reynolds: There is a process of nailing things down. I don’t know that it goes to the level of, like you can’t actually sponsor, because obviously Pantheon does sponsor and we’ve been, on the other end of being told that we don’t contribute enough to both WordPress and Drupal. But that also depends on how you define contribution really. And I have thoughts about that. The merit thing, it’s just where you’re drawing the lines in the sand. And Drupal has, Dries has his particular lines and the things that make you a contributor to the ecosystem, and what that means in Drupal.

And then, to a degree, I mean, yeah, like you said, Five for the Future is kind of, sort of that thing, but it’s also kind of amalgamous and like it’s honor based. There’s not really a real sense of tracking or, you could kind of, sort of track things, I guess. But it’s very wibbly wobbly.

But my perspective on contribution always has always been, one of the things, I know we’re not supposed to talk about what was talked about at PressConf, but Brad Williams, who I, was my former boss said, he was talking about Five for the Future and was talking about how Web Dev was very early on an adopter of Five for the Future, and I was there at the time, so I remember this. So it’s not just Brad’s words that I’m repeating. And the way that he approached Five for the Future was very much in the umbrella of if you’re doing anything WordPress related that is open source, we are counting that as a Five for the Future project, right. And that was how I understood Five for the Future.

That was kind of how it was presented back in 2014 or whatever when Matt first threw the idea out to the, out to the ecosystem. And since then it’s sort of become this thing where contribution to WordPress really means Core contributions, or contributions in very specific ways. And it doesn’t mean all of this other stuff over here, including an up to theme development, plugin development.

Even if that stuff is on .org, even if that stuff is open source, that’s not included in contribution. But I’m very much in the side of the bucket where like, well, everything is kind of contribution. We wouldn’t know how good WordPress scales to like enterprise level sites that are running it today, that are driving the adoption of WordPress, and driving the bar in like the visibility of WordPress, if it wasn’t for just hosts that are running the thing and making sure that it operates properly. And the teams like 10up and Human Made, and whoever who are like then, oh, to get this working at its best, fastest, most optimized state we need to do some enhancements. Either through the plugin ecosystem or contributing back to Core, so that we can push this code to these hosts, or platforms, or softwares as a service or whatever so that they operate for these clients that we’re building.

So like I kind of feel like everything should be, even if you are a taker, in the language of Dries, that doesn’t necessarily mean that you’re not pushing the ecosystem forward. And I have that critique for both of our BDFLs, right? Because they both have very similar ideas.

Like I think that the contribution title could be applied and should be applied more broadly, because everything that we’re doing is driving the project forward. A lot of the stuff that I write is like GitHub actions, or like plugins or things that are still broadly available to, and publicly available, and they’re open source and they’re for the community, but they’re not technically contribution, because contribution is narrowed down into this very specific definition.

[00:45:30] Nathan Wrigley: It’s kind of curious, you know, if you were to cast your mind back 20 years, the beginning of both Drupal and WordPress, just even the idea that they would still be around for one thing, you know, that that software wouldn’t have just come and eaten them up and there would be like a two year lifespan.

[00:45:44] Chris Reynolds: And that there’s an open source solution for these things.

[00:45:46] Nathan Wrigley: And it’s going and it’s kept rising and it’s kept being used. That’s just so curious. But also the teething pains of that. The idea that, you know, it started with Matt, and it started with Dries, and then people got on board and it grew. And then in the case of Drupal, and in the case of WordPress, it just grew to the point where these individuals can no longer handle everything.

You know, you described how Dries needed to sort of say, can somebody handle the events please? Because that’s just not where I want to be. The same, presumably on the WordPress side. And now we’re into giant communities. Really, really complicated communities. A lot of differing opinions, a lot of different maybe even politics, but a lot of different backgrounds, geography, the whole thing.

It’s this international thing. And it’s difficult. It’s really, really hard to get it right. But what I’m taking from this conversation. Is that maybe Drupal do things differently, but they have way more in common than we have as differences.

But also maybe there are some things that WordPress does better. Maybe there are some things that Drupal does better. And it would be very, very interesting if the two communities could kind of collide more, and share those ideas and we pick the best of each of them. It’s never gonna be perfect, but maybe that’s something that in the future, given that really at a very core level we’re not in competition with each other, it would be very nice if those conversations could take place.

And I think you’ve laid the groundwork for a lot of that and explained how one project is not that dissimilar to the other one. So, that’s it.

Chris, thank you so much for chatting to me today. I really appreciate it. That was very enlightening.

[00:47:22] Chris Reynolds: Thank you for having me. I always love chatting with you.

On the podcast today we have Chris Reynolds.

Chris is a developer advocate at Pantheon, where he brings nearly 20 years of experience in the WordPress community, as well as deep involvement with Drupal and open source technology at large. Prior to his advocacy role, he worked at some of the top WordPress agencies like Human Made and WebDevStudios. He’s been active at events like DrupalCon, PressConf, and WordCamps.

In this episode, we set aside the usual WordPress-only focus, and turn our attention to two CMSs, WordPress and Drupal, what makes them tick, where they excel, and where they might have something to learn from each other.

Chris draws on his unique perspective working closely with both platforms, as Pantheon is one of the few hosts with a 50/50 split between WordPress and Drupal sites, and has a significant footprint in both ecosystems.

We discuss the similarities and differences between the two open source CMS communities, from the mechanics of flagship events like WordCamps and DrupalCon, to the ways these projects organize their contributors and support community initiatives.

Chris explains how Drupal’s model, with its association-run funding and project governance, compares to WordPress’s approach, including how each community approaches plugin and module development, and what role agencies and companies play in contributing to Core and the broader ecosystem.

If you’re curious about how open source projects organise themselves, how their communities navigate growth and challenge, and what WordPress can learn from Drupal (and vice versa), this episode is for you.

Useful links

Pantheon

 Ampache

 DrupalCon

PressConf

 WebDevStudios

 Human Made

 Acquia

 Dries Buytaert

 Automattic

Solr

 Elasticsearch

 Composer

 Chris on a previous episode of the WP Tavern Jukebox podcast talking about Composer

 DrupalCamps

Solving the Maker-Taker problem

 Dries Notes – State of Drupal presentation (September 2024)

 Drupal Association

Drupal  Yoast module

Drupal CMS

Drupal Views

Gravity Forms

Five for the Future

❌