Drupal to WordPress Migration: A Step-by-Step Guide

Initially, I considered Drupal for website building. Although robust, its complexity presented a steep learning curve, particularly for novices.

Consequently, I opted for WordPress. Its blend of power and user-friendliness makes it my universal platform for all web projects.

Throughout the years, I’ve assisted numerous entrepreneurs and programmers in transitioning their sites from Drupal to WordPress. The prospect of migrating an entire website without data loss or functionality issues can be daunting.

To address this, I’ve developed a straightforward guide that simplifies the Drupal to WordPress migration process. It details each stage, employing techniques refined through practical application and collaborative improvements with others who’ve undertaken similar migrations.

Regardless of your website’s scale, I aim to facilitate a seamless transition. Let’s commence this journey together.

Why Migrate From Drupal to WordPress?

Drupal and WordPress may appear superficially alike. However, these platforms diverge significantly in their practical application.

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

I’ve observed that basic content modifications can become unnecessarily time-consuming. Furthermore, securing a suitable developer for minor adjustments can be challenging and costly. The administrative interface can also feel intimidating.

WordPress, in my opinion, is significantly more intuitive, making it my default recommendation for individuals seeking to establish a website.

Picture it as your go-to tool—easy to grasp and use. Tasks like composing and publishing blog posts, incorporating images, or implementing a contact form become remarkably straightforward.

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.

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.

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.

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.

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.

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.

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.

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’.

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 view the CSV file using Excel or Google Sheets, you’ll find a comprehensive list of your Drupal URLs. It’s important to keep this file secure, as it will be required later in the process.

Step 2: WordPress Installation and Configuration

The prerequisites for Drupal and a self-hosted WordPress installation share similarities. To get started with WordPress, you’ll need a domain name and a WordPress hosting account.

If your Drupal site already has a domain name and hosting, these can also be used for your WordPress site.

Alternatively, should you prefer a different host, Bluehost is a top WordPress-recommended provider. They provide WordPress hosting along with a free domain for just $1.99 per month.

→ Click Here to Claim This Exclusive Bluehost Offer ←

Alternatives:If you want to explore additional reputable choices, consider Hostinger and SiteGround. Both are respected within WordPress hosting, providing reliable performance. Consult my expert recommendations for more WordPress hosting providers.

The screenshots in this guide will come from Bluehost to provide a visual walkthrough.

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

This will take you to their pricing page, displaying various hosting plans. The ‘Basic’ plan generally works well for most websites.

Choose the plan that best fits your needs by clicking its ‘Select’ button.

The next step involves choosing the domain name you wish to use. This will be your website’s address, such as Your website's address is typically www.yourwebsite.com..

Opt for ‘I’ll create my domain name later’ to allow time for a complete migration before connecting your domain to WordPress.

Why postpone domain setup?🤔 If a domain is already linked to your Drupal site, selecting this option enables WordPress setup without disrupting the live site. Later, I’ll guide you on directing your domain to WordPress after everything is prepared.

Following the domain selection, input your account information (name, address, etc.) and payment details to finalize the purchase.

Bluehost will then email you a confirmation containing your login credentials. Store this email securely, as these details are essential for accessing your hosting account dashboard.

Upon your initial login to Bluehost, WordPress will be automatically installed for your convenience.

Simply locate and click the ‘Edit Site’ button within your hosting dashboard. This will directly access your WordPress admin panel, where you can oversee your new website.

That concludes the process. You have 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 streamline the migration, I will demonstrate how to use the free WordPress plugin, FG Drupal to WordPress. This plugin automates much of the effort required to transfer content between platforms.

Begin by installing and activating the plugin. Refer to the detailed guide on WordPress plugin installation for further instructions.

Subsequently, the importer tool can be located underTools » Importwithin your WordPress dashboard menu. A range of import options will be displayed. Locate ‘Drupal’ in the list, and then select the ‘Run Importer’ link.

The FG Drupal to WordPress importer will then launch. You’ll then be required to furnish the importer with specific details about your Drupal website, facilitating a connection for content retrieval.

The initial prompt will request the URL of your Drupal website.

Following that, the system will require your Drupal database credentials to access all posts, pages, and other content. You must provide:

  • ⛁ Database Host: Typically, this islocalhost 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 associated with the specified database user.
  • ⛁ Table prefix:Drupal employs table prefixes to maintain database organization. Input your Drupal table prefix here; it often resemblesdrupal_.

You might have recorded this information during the initial Drupal website setup. Alternatively, advanced users can use FTP to locate the details within your Drupalsettings.php file. Or simply contact your Drupal hosting provider and ask for assistance.

After inputting your database information, select ‘Test database connection’ within the importer. A ‘Connection successful’ message confirms proper setup.

Below the connection settings, the importer offers supplementary options. These options govern the elements to import, such as featured images and other media.

For your initial import, retain the default settings.

When prepared, initiate the import by selecting ‘Start / Resume the Import.’ The importer retrieves content, media, and comments from Drupal and transfers it to WordPress.

The duration varies based on content volume. Upon completion, a success notification appears.

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

Following migration, internal links may still direct to your former Drupal site. This plugin can attempt to redirect them to the equivalent WordPress URLs.

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

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

With your content transferred to WordPress, ensure visitors reach your new site when entering your domain.

If you possess an existing domain for your Drupal site (for example,yourwebsite.com), retain its use for WordPress. Adjust the nameservers to correspond to your WordPress site.

Your WordPress host, such as Bluehost, Hostinger, or SiteGround, will supply the necessary nameserver data.

Typically, this information is provided as a pair of addresses, similar to:

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

You can adjust these settings via your domain name registrar; that’s the company from whom you bought your domain.

Your domain registrar and hosting provider may be the same entity; however, they are often separate. Network Solutions and Namecheap are popular domain registrars.

Access your account on your domain registrar’s website. Then, locate the settings for your domain name, such as ‘DNS Settings’, ‘Nameservers’, ‘Domain Management’, or ‘Manage DNS’.

For instance, the screenshot shows the Bluehost interface.

Refer to my guide on how to easily change domain nameservers for instructions for common domain registrars.

After updating your nameservers, allow time for the updates to propagate across the internet; this process is known as DNS propagation.

DNS propagation can range from a few hours to, potentially, 24–48 hours. During this period, visitors may be directed to either your old Drupal site or the new WordPress site.

Step 5. Setting Up Permalinks and Redirects

Your prior Drupal site used a specific URL structure. WordPress uses a different permalink system.

Since the URL for each post changes during migration, visitors with links to your old Drupal content will encounter ‘404 Page Not Found’ errors on WordPress.

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 offers several URL structure options, known as permalinks, which define how your website addresses are formatted.

The ‘Post name’ setting is a frequently used option, generating user-friendly URLs that commonly incorporate the title of your page or blog post. This clear structure assists both readers and search engines by providing immediate context.

Navigate to the following location in your WordPress dashboard:Settings » PermalinksWithin the ‘Common Settings’ section, locate the ‘Post name’ option and select its corresponding radio button.

Scroll to the bottom and click ‘Save Changes’ to finalize the permalink settings.

Setting Up Redirects from Your Old Drupal URLs

You’ll need to configure redirects to ensure continued functionality of your old Drupal links, using the list of Drupal URLs you collected via Link Klipper in Step 1.

Tip:If you opt for the paid edition of FG Drupal to WordPress for importing, it can automate the creation of these redirects.

For simple redirect management in WordPress, install and activate the free Redirection plugin. For installation guidance, refer to my WordPress plugin installation guide.

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

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

  • Source URLis where you’ll specify the original Drupal URL (the part after the domain), for example,/my-old-page.
  • Target URLis where you’ll input the corresponding WordPress URL (the portion after the domain), such as/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.

You’ll need to repeat these steps for each Drupal URL requiring redirection. This process can be time-consuming for sites with numerous pages, but it’s essential for maintaining SEO and preventing broken links.

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

Alternative: Using AIOSEO for Redirects

The All in One SEO (AIOSEO) plugin includes a redirection manager, useful if you already use it or plan to for SEO enhancement.

This WordPress SEO plugin simplifies setting up site-wide redirects and provides numerous other features to improve your search engine rankings.

For instance, its 404 error tracking identifies broken links, and you can incorporate schema markup, tailored breadcrumbs, and local SEO modules, among other options.

Step 6. Setting Up Your WordPress Theme

To enhance the visual appeal of your WordPress site, you’ll need to select and install a theme. These are pre-designed templates determining your site’s appearance, encompassing colors, fonts, page layouts, and blog post presentation.

A wide array of free and premium themes are available, catering to virtually every niche and industry imaginable.

From my perspective, straightforward and uncluttered designs tend to perform optimally for the majority of websites. They project a more polished image, simplify navigation for visitors, and, most importantly, prioritize your content.

To streamline your selection, I’ve compiled a guide on choosing the ideal WordPress theme, which guides you through vital considerations and helps you steer clear of typical pitfalls.

Subsequently, you can refer to my detailed instructions on installing 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

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 CanadaCreate 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 CanadaCreate Blog is the heart of CanadaCreate. It’s a WordPress learning library packed with thousands of easy-to-follow tutorials, guides, and how-to articles.
  • The CanadaCreate Dictionary helps you understand all the WordPress terms and jargon, like a WordPress translator.
  • CanadaCreate Videos walk you through common WordPress tasks step-by-step, visually, from basic to more advanced techniques.
  • Our CanadaCreate YouTube Channel is packed with WordPress tips, tutorials, and how-tos to help you stay up-to-date with the latest WordPress goodness.
  • The CanadaCreate Blueprint gives you a peek behind the scenes and shows you our recommended WordPress setup.
  • CanadaCreate 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.

Share This Post
DMCA.com Protection Status Chat on WhatsApp