
Building a website is like choosing the right tool for a job. Drupal and WordPress are two popular tools, but they work differently. Many website owners start with Drupal because it is strong, secure, and flexible. It helps developers create custom websites with advanced features. However, it can be tricky for beginners and requires technical knowledge to manage properly.
On the other hand, WordPress is easier to use. It has a simple dashboard, a large library of themes, and thousands of plugins that allow you to add new features without coding. Because of this, many website owners try to convert Drupal to WordPress to make managing their sites simpler.
In this tutorial, we’ll learn how to migrate your website from Drupal CMS to WordPress step by step. We’ll start by preparing for the migration, including backing up your Drupal site and setting up WordPress. Then, we’ll explore how to actually migrate Drupal to WordPress.
We’ll also cover common migration issues, such as fixing broken links and adjusting permalinks, to ensure a smooth transition. Finally, we’ll go through essential post-migration tasks, like optimizing your WordPress site, installing important plugins, and testing everything to make sure your new site runs smoothly.
KEY TAKEAWAYS
- Moving from Drupal to WordPress makes website management easier with a user-friendly dashboard and flexible customization options.
- Before starting the migration, choose a reliable hosting provider and set up WordPress.
- Always backup your Drupal site, including files and databases, to prevent data loss.
- Use the FG Drupal to WordPress plugin to transfer content like posts, pages, categories, tags, and media.
- You need the Drupal database and FTP details in the plugin to connect and fetch data accurately.
- Adjust import settings to map Drupal content types correctly to WordPress posts and pages.
- Large sites should be imported in smaller batches to avoid server overload and timeout errors.
- Verify all imported content, including posts, pages, images, and links, to ensure nothing is missing.
- Update internal links and fix any broken URLs using a redirection plugin to maintain SEO rankings.
- Choose a fast, mobile-friendly, and SEO-optimized WordPress theme that fits your site’s purpose.
- Install essential plugins for security, SEO, caching, and backups to enhance your new WordPress site.
- Run final checks, test your site, and update domain settings to make your WordPress site live.
- Regularly update WordPress core, themes, and plugins to keep your site secure and running smoothly.
TABLE OF CONTENTS
How To Migrate A Website From Drupal To WordPress
Step 1: Backup Drupal Website
Before making any major changes to your website, creating a full backup is always a good practice. While the Drupal migration process does not involve deleting files, having a backup ensures that you can restore your site if anything goes wrong. Since Drupal does not offer built-in backup tools, the process must be done manually by saving 2 critical components:
- The Website Database
- The Root Directory.
The database stores essential content and settings, making it mandatory to backup. Drupal officially recommends using modules to simplify this process. One of the most reliable options include Backup and Migrate, which allow you to export the database efficiently.

After backing up the database, the next step is to create a copy of the Drupal root directory, which contains all the files needed for the site to function. The best way to do this is by using Secure File Transfer Protocol (SFTP) to connect to your server and download the entire root folder (usually public_html directory) to your local computer.

However, if you’re hosting provider offers cPanel, then you can export Drupal site files and database as follows:
To backup a site:
Go to cPanel → Files → File Manager. Right-click on the public_html directory and choose Compress to create a zip file.

Next, choose Compression Type, enter the name of your compressed archive, and click Compress File. We recommend you add a timestamp while naming your compressed file.

Then, right-click on your compressed file and choose Download to save it on your computer.

To backup Drupal database:
Go to cPanel → Databases → phpMyAdmin. Click on your Drupal database. Switch to the Export tab. Select Custom – display all possible actions and SQL as the export method and format, respectively.

Then, scroll down to the Output section and choose zipped as compression type.

After that, scroll all the way down and click Export to save the compressed database file on your computer.
IMPORTANT:
If you’re hosting your Drupal site locally with XAMPP, you can export the database using the method described earlier (using phpMyAdmin). However, to copy the Drupal root directory, navigate to C:xampphtdocsdrupal-site-folder, select all files, right-click, and compress them into a single archive.
Once both the database and the root directory have been backed up, it is recommended to store them in the same folder for easy access. Compressing these files together makes restoration simpler if needed. By taking these precautions, you ensure that your website remains safe during the migration process.
Note that we’ll not use these backup files during the Drupal to WordPress migration process. Instead, we’ll use the URL of a live Drupal website. These backup files are just for safety and peace of mind.
Step 2: Find a New Web Host or Set Up a New Website
After backing up your Drupal website, you need a place to install WordPress. Depending on your hosting plan, you can either create a new WordPress website with your current provider or look for a new host. Choosing the right hosting option ensures a smooth transition and prevents any risk of data loss.
Many web hosting providers allow users to run multiple websites on the same account. If your current plan supports this, you can install WordPress alongside your existing Drupal site. This approach allows you to set up WordPress without affecting your live website.
However, if your plan only allows one website at a time, replacing your Drupal installation with WordPress could lead to data loss. In such cases, upgrading your plan or finding a new hosting provider with multi-site support is necessary.
If you are satisfied with your current hosting provider and it supports WordPress, there may be no need to switch.
Some providers like Hosted® specialize in WordPress hosting and provide various features that make your site management easier. If you purchase a WordPress Hosting plan with us, we’ll not only simplify the website maintenance for you, but we’ll handle various technical tasks as well.

Some of the key advantages include daily automatic backups to prevent data loss, SSL certificate installation for secure connections, staging sites for testing purposes, CDN integration to improve website speed, and built-in security measures that scan and remove malware automatically.
When choosing a hosting provider, it is important to consider factors such as:
- Website Speed
- Security Features
- Scalability
- Customer Support
A good host should provide fast loading times, automatic updates, strong firewalls, and malware protection. It should also offer scalability to support your site as it grows and provide expert assistance.
If your current hosting does not meet these requirements, you can migrate to a WordPress-friendly host. Many hosting companies offer free migration services, making the transition seamless.
Once you choose a suitable WordPress hosting provider, sign up for a hosting plan that meets your requirements.

Then, move to the next step.
Step 3: Install WordPress
After purchasing a hosting plan, it’s time to install WordPress. There are 2 main ways to do it:
- Using a One-click Installer
- Performing a Manual Installation.
Most web hosting providers, such as Hosted®, offer a one-click WordPress installation, making it the easiest option for beginners. To use this feature, login to Hosted®’s cPanel and head over to Software → Softaculous App Installer.

Locate WordPress and click Install.

Now, select the domain name where you want to install it. Enter your admin username, password, and email. You may update the database name as per your choice. Once done with it, click Install, and the system will automatically set up WordPress for you within a few minutes.
Once WordPress is installed, it’s important to configure some basic settings. We’ve already thoroughly covered it in a separate tutorial for you. You can find that at the following link:
– How To Configure WordPress Settings After Installation
With WordPress now installed and properly configured, your site is ready for the next step—adjusting the permalink structure to match your Drupal URLs, ensuring a smooth migration process.
Step 4: Choose a Permalink Structure in WordPress
After installing WordPress, it’s time to set up permalinks. Permalinks are the URLs of your website pages and posts. For example, you may have a post in Drupal at the following link:
yourwebsite.com/blog/my-first-blog-post
This format is more readable and helps your pages rank better on Google. However, by default, WordPress uses a permalink structure that looks like this:
yourwebsite.com/?p=123
This format is not user-friendly because it doesn’t tell visitors or search engines what the page is about.
Remember, a well-structured permalink makes your site easy to navigate and helps search engines understand your content. Therefore, choosing the right permalink structure is important for SEO and user experience.
When you migrate Drupal to WordPress, the URLs of your imported content will no longer follow the same structure used in Drupal. As a result, pages and posts may have different URLs than before.
Here, WordPress provides a simple way to customize your permalink structure, and it’s best to do this as early as possible. Setting up the right permalink format before migrating content makes it easier to update internal links later, which we’ll discuss later in this tutorial.
To adjust your URL structure, go to WordPress Dashboard → Settings → Permalinks from the left-hand menu. Select the Post name and click Save Changes at the bottom of the page.

TIP: The Post name structure is the most SEO-friendly and widely used. It makes your URLs easy to remember and improves your site’s search rankings. WordPress also offers the flexibility to define a custom structure; however, the Post name setting is often the best choice for most websites.
Furthermore, if you are changing your URL structure, you may also need to set up redirects to prevent visitors from landing on broken pages.
Now that your permalinks are properly configured, you’re ready for the next step—setting up the FG Drupal to WordPress plugin to start the migration process.
Step 5: Set Up the FG Drupal to WordPress Plugin
Now that WordPress is installed and your permalink structure is set, the next step is to transfer your content from Drupal to WordPress. Doing this manually can be difficult and time-consuming, but the FG Drupal to WordPress plugin makes the process much easier.
The FG Drupal to WordPress plugin is a migration tool that helps move all your website content from Drupal to WordPress without losing data. It automatically imports posts, pages, images, categories, tags, and users while keeping your website’s structure intact. This plugin saves time and ensures that your transition is smooth and error-free.
The plugin is available in both free and premium versions. The free version works well for basic migrations, while the premium version allows you to transfer additional content like custom fields, comments, and Drupal taxonomies. If your Drupal site has complex content structures, the premium version may be the better choice.
To use this plugin, you first need to install it on your WordPress site. Here’s how:
Login to your WordPress Admin Dashboard. Go to Plugins → Add New Plugin from the left menu. Look for FG Drupal to WordPress. Once you locate it, click Install Now, then Activate.

After activating the plugin, it will appear under the Tools → Import menu in your WordPress Dashboard. This is where you will configure the settings and begin migrating your content from Drupal. We’ll learn that in the next section.

Step 6: Select Your WordPress Content Settings
Now, you need to configure the import settings. This step is important because it ensures that all your Drupal content moves to the right place in WordPress. If your content is not mapped correctly, your posts and pages may not appear as expected.
To begin the migration, navigate to Tools → Import in your WordPress Dashboard. Then, find the Drupal option and click Run Importer.

On the importer page, you’ll find various settings that need to be configured before starting the Drupal to WordPress migration. The first step is choosing whether to remove any existing WordPress content:
If you’re working with a fresh WordPress installation, there’s usually no need to delete anything. However, if you’ve added test posts or pages, you can select the Remove all WordPress content option and click Empty WordPress content before proceeding.

Step 7: Fill In Your FTP Credentials
After configuring your import settings, the next step is to enter your FTP credentials (you’ll get these after creating an FTP account). File Transfer Protocol (FTP) is a method used to access and transfer files between your website and the server. During migration, FTP is required to move important media files, themes, and other assets from your Drupal site to WordPress.
The FTP credentials include:
- Host (Server Address): The server where your website files are stored.
- Username: Your FTP account name, usually provided by your hosting provider.
- Password: The password for your FTP account.
- Port: The default FTP port is 21, but some servers use SFTP (port 22) for secure transfers.
- FTP Base Directory: The root folder on the server where all user files are stored.
You can find your FTP details in your hosting account dashboard or in the welcome email from your web host. If you are using cPanel, you can check them under FTP Accounts.

Once you have your FTP credentials, go back to the WordPress Dashboard. Then, navigate to Tools → Import and click on Run Importer under the Drupal section. Scroll down to the Drupal web site parameters section. Provide:
- Your live Drupal website’s URL.
- Choose FTP to tell the plugin how it can download media files. By default, it’s HTTP. However, we recommend selecting FTP–it’s useful for large websites.
- Drupal FTP parameters (a.k.a. FTP credentials).
After that, click Test the FTP Connection to ensure that WordPress can access your Drupal files.

Once the connection is successful, move to the next step to connect your Drupal database to finalize the content migration.
Hosted®’s WordPress Hosting provides a solid and reliable foundation for your website.
Whether you’re building a personal blog or expanding a business, WordPress Hosting delivers the flexibility, speed, and expert support required to drive sustained growth and long-term success.
Step 8: Enter Your Drupal Database Parameters
Your Drupal database stores all of your website’s important content, such as text, comments, and user data. To connect it to WordPress, you need 6 key pieces of information:
- Database Name: The name of the database where your Drupal content is stored.
- Database Username: The username used to access the database.
- Database Password: The password linked to the database user.
- Database Host: The server where the database is hosted (usually localhost for most web hosts).
- Database Port: Usually, it’s 3306.
- Table Prefix: A table prefix in MySQL is a string added before table names within a database to help organize and differentiate tables.
Here’s how you can find these details on Hosted®:
Go to cPanel → Files → File Manager.

Navigate to the Drupal root folder, which is often named public_html. Open the sites/default/ directory and find the settings.php file. Right-click on it and choose View to open this file in read mode.

Then, look for lines that contain your required database credentials:
<!-- EXAMPLE OF DATABASE CREDENTIALS -->
*/
$databases = array (
'default' =>
array (
'default' =>
array (
'database' => 'xxx',
'username' => 'xxx',
'password' => 'xxx',
'host' => 'localhost',
'port' => '3306',
'driver' => 'mysql',
'prefix' => 'drjs',
),
),
);
Note down these values, as you will need them to connect to WordPress.
If you are unsure of the database name, you can also check phpMyAdmin in cPanel, where all your website databases are listed.

Once you get your database details, go back to WordPress, where we previously established an FTP connection. Now, scroll a little down to the Drupal database parameters section and enter the required database credentials. This allows you to migrate all your Drupal content into WordPress.
Then, click Test the database connection to check if the details are correct.

If the connection is successful, you will see a confirmation message. This means WordPress can now read your Drupal database and is ready to import your content. However, if the connection fails, double-check your database name, username, and password to ensure they are correct. You may also need to check your hosting firewall settings or contact your web host for assistance.
Once your database is connected, you are ready for the next step—configuring your post and page import settings to ensure your content is transferred properly into WordPress.
Step 9: Adjust Your Post and Page Import Settings
Now that WordPress is connected to your Drupal database, it’s time to import your content. However, you don’t have to move everything if you don’t need to.
The FG Drupal to WordPress plugin allows you to select specific content to import, making the process more efficient. If your Drupal site is large, importing everything at once can cause issues, so it’s important to manage large imports properly.
To adjust the page and post related import settings, scroll to the Behaviour section. These settings determine how the plugin imports posts and pages from Drupal. First, you’ll need to choose whether to include the post and page summaries within the content in WordPress or import them as excerpts.
For better organization, it’s recommended to import them as excerpts, which saves time by eliminating the need to manually add them later.

Next, specify where WordPress should store the imported media files. The default setting is ideal, as it places files in the standard WordPress media directories.

Additionally, you can select which image should be used as the featured image for your posts and pages. The image field option automatically pulls the image associated with each post in Drupal, typically found below the Drupal editor near the Tags field.

The remaining options allow you to prevent the plugin from generating thumbnails or inserting the featured image into the body of imported content. It’s best to leave these settings disabled to maintain a clean layout.
By default, FG Drupal to WordPress will cancel the import of a media file if it takes longer than 20 seconds to load. This prevents the process from getting stuck due to slow server responses. However, if you’re using a reliable hosting provider, this shouldn’t be an issue.
Once you’ve made your choices, click Save settings to apply your settings. Here’s an example of the recommended media settings we’ll use for this tutorial:

Step 10: Migrate From Drupal to WordPress
Now that you’ve set up the plugin and adjusted the import settings, it’s time to start Drupal to WordPress migration. This step will transfer your Drupal posts, pages, images, categories & tags, and users to WordPress.
To begin the migration, follow these steps:
Click the Start/Run Import button. The plugin will now start fetching data from your Drupal database and transferring it into WordPress. You’ll also see a progress bar showing how much content has been moved. If you have a large website, the process may take several minutes.
To monitor the migration, keep an eye on the progress log. The plugin will display messages such as n article imported, n page imported, and n medias imported to show which data is being transferred. If an error occurs, the log will display a message explaining the issue.

Once the migration is complete, you’ll see a success message confirming that the content has been imported. Next, before exiting this page, scroll down to the After the migration section and click the Modify internal links button.
This function automatically updates internal links throughout your site to match the new WordPress permalink structure. Once completed, review a few pages and posts to verify that all internal links are functioning correctly.
IMPORTANT:
Make sure to complete this step only after setting your WordPress permalink structure, as done in the earlier step. Changing the permalink structure afterward could break internal links, requiring additional fixes.

Now, you should review your new WordPress site to ensure everything looks as expected. To check posts and pages, go to Posts → All Posts and Pages → All Pages to see if all your articles and static pages are present. Open a few posts and pages to verify that the content is formatted correctly.
Navigate to Posts → Categories and Posts → Tags to ensure that your site structure is properly maintained. Additionally, go to Media → Library and look for images, videos, and other media files. If some images are missing, you may need to run the media import again or manually upload them using FTP.
Once everything looks good, you are ready to point your domain to your new WordPress site and make it live.
Step 11: Point Your Domain to WordPress Hosting
Now that your Drupal content has been successfully transferred to WordPress, your new website is fully functional. However, visitors trying to access your website are still being landed on the old Drupal site. To complete the migration, you need to update your domain settings so that it points to your new WordPress installation.
Instead of registering a new domain, you can simply reconfigure your existing one. The process for doing this depends on whether you manage your domain through a domain registrar or a hosting provider.
If you registered your domain with a third-party domain registrar, you will need to login to your account and update the DNS settings (which means changing the nameservers). Here’s how you can update nameservers to point your domain to our hosting:
– Point External Domain Name to Hosted®’s Hosting Server
These settings tell the domain where to direct visitors. If you’re still unsure how to make these changes, refer to the documentation provided by your registrar for step-by-step instructions.
On the other hand, if your domain was set up directly through your hosting provider, you can manage its settings from your hosting control panel. For example, Hosted users can do this as follows:
Navigate to Manage Services → Domains. Click on the Manage button next to your domain name.

Click on Manage DNS under Domain Information.

Here, click on the Domain Pointing button to point your domain to new WordPress website.

However, if you purchased your domain from a different hosting provider but built your WordPress site with us and now wish to transfer the domain to our platform, you can follow the guides below:
- How To Transfer A Domain
- What Is Needed For A Domain To Be Transferred?
- How Long Does A Domain Transfer Take?
- Domain Not Eligible For Transfer
IMPORTANT:
DNS updates can take some time to propagate—usually within 24 to 48 hours. Whereas, a domain transfer can typically take 5-7 working days. And, if the domain and hosting are from the same provider, no additional action is needed unless you’re using a different hosting service.
Step 12: Choose a WordPress Theme
Now that your content has been successfully migrated from Drupal to WordPress, it’s time to choose a theme for your new website. A WordPress theme controls how your site looks and functions. Picking the right theme is important because it affects user experience, website speed, and SEO.
When choosing a WordPress theme, consider the following factors:
- Design and Layout: Your theme should match the style and purpose of your website. For example, if you run a blog, look for a clean and simple theme. If you have a business website, choose a professional and structured design.
- Responsiveness: A mobile-friendly theme is essential. More than half of internet users browse websites on their phones, so make sure your theme looks good on all screen sizes.
- Speed and Performance: A fast-loading theme improves user experience and helps your site rank better on Google. Avoid themes that have too many built-in features that slow down your site.
- Customization Options: Some themes offer built-in settings that let you change font and font colors and layouts without coding. If you want more control, choose a theme that works with page builders like Elementor or Gutenberg.
- SEO-Friendly: A well-coded theme helps search engines understand your website better. Look for a theme that follows SEO best practices and is optimized for speed.
- Plugin Compatibility: Your theme should work smoothly with important plugins, such as SEO plugins (Yoast SEO), security plugins (Wordfence), and performance plugins (WP Rocket).
- Support and Updates: A regularly updated theme is more secure and compatible with the newest WordPress version. Choose a theme that has good customer support and active development.
For free themes, you can browse the WordPress Theme Directory by going to WordPress Dashboard → Appearance → Themes → Add New Theme. Some popular free themes include Astra, GeneratePress, and OceanWP. However, you can select by filtering them as Popular, Latest, Block Themes, or you can search based on your niche type (e.g., blog, portfolio, store, etc.).
Additionally, if you want advanced customization and professional support, you can click on the Upload Theme button to upload the premium theme that you purchased from a third party (e.g., Theme Forest).

Once you’ve selected a theme, install and activate it. With your new theme in place, your website is now visually appealing and ready for final customizations and optimizations before going live.
Step 13: WordPress to Drupal Post-migration
Now that your website is successfully migrated to WordPress, you might be wondering what to do with your old Drupal installation. Since all of your content is now on WordPress, keeping the Drupal site isn’t necessary. If you’re certain that everything has transferred correctly, you can go ahead and delete the old installation.
However, if you’re using the same hosting provider for both Drupal and WordPress, there’s no need to rush. Keeping Drupal for a short time can help ensure that everything works properly on the new site. If you’re paying for two separate hosting plans, though, keeping the old website may not be worth the extra cost.
It may be a good idea to hold onto the Drupal site temporarily while you double-check that all content and settings have been successfully migrated. If anything is missing, you can always retrieve it. In the worst case, you should have a backup from before the migration, so restoring lost data won’t be an issue.
With your website now running on WordPress, you have access to a wide range of new features and tools. One of the best places to start is the WordPress.org plugin library, where you’ll find thousands of free plugins that can add functionality to your site.
Many of these plugins provide features that weren’t available in Drupal, helping you enhance your website’s performance, security, and design. Exploring these tools will allow you to get the most out of WordPress and improve your site’s overall experience.
![Boost your website’s performance with WordPress Hosting Strip Banner Text - Boost your website’s performance with WordPress Hosting. [Get started]](https://www.hosted.com/articles/wp-content/uploads/2025/03/drupal-to-wordpress-2-1024x229.webp)
FAQS
How long does it take to migrate a website from Drupal to WordPress?
The migration time depends on the size of your website. Small websites with a few pages can be moved in a few hours, while larger sites with thousands of posts and media files may take a day or more. Proper planning, a good hosting provider, and following each step carefully can speed up the process.
Do I need technical knowledge to move my site to WordPress?
While basic knowledge of website management helps, you don’t need to be a developer to migrate your site. WordPress offers easy-to-use migration plugins, and many hosting providers offer migration services. If you’re unsure, you can hire a WordPress expert to handle the migration for you.
What are the biggest challenges when moving from Drupal to WordPress?
Migrating from Drupal to WordPress can be tricky, especially if your site has custom content types, user roles, or unique designs. Issues like mismatched content structures, missing media files, and broken URLs can arise. However, using migration tools, carefully mapping content, and setting up redirects can help ensure a smooth transition without losing important data.
Can I keep my SEO rankings after the migration?
Yes, you can maintain your SEO rankings by setting up 301 redirects for old Drupal URLs, ensuring your WordPress permalinks match your previous structure, and checking for broken links. After migration, submit your new sitemap to Google Search Console. Regularly monitoring traffic and fixing errors will help you keep your site’s search rankings intact.
What should I do if some content doesn’t migrate properly?
If some content is missing after migration, re-run the FG Drupal to WordPress plugin and check your import settings. Sometimes, large websites need multiple import attempts. You can also manually export and import missing images or posts using FTP or the WordPress media uploader. Checking for plugin conflicts can also help resolve import issues.
Other Related Tutorials
– WordPress Migration and Hosting: Tips and Best Practices
– A Clear Guide To Migrate WordPress Sites Seamlessly
– A Clear Guide To Migrate WordPress Sites Seamlessly
– Migrating to a Higher Capacity WordPress Host
– WordPress Website Migration And Hosting: An Overview
