Choosing a Content Management System (CMS) is a sensitive issue. Newbies usually prefer WordPress as the simplest CMS. But sooner or later the system’s capabilities can become insufficient for providing both ultimate performance and a perfect look, at least at a desirable rate. An administrator with some practical experience would come to the conclusion that they need to level up. And here's the question — how do you switch from WordPress to Drupal? Let’s figure it out!
Drupal’s Advantages Over WordPress
It’s time to sort through Drupal's specific features, how to use them, and what clear advantages they offer to developers. If two or more of the reasons listed below apply to you, it makes sense to consider a move.
- Improved SЕО. The system has been developed to take into account all the best and neoteric SEO tendencies. For example, it's got inlined coaching and numerous other useful functions. Moreover, there are dozens of extensions for optimal efficiency, such as Yoast SEO.
- Speed. Drupal is the leader in this option. It allows the user to develop a high-performing page with a high-speed index. Owing to relatively small resource intensity, it's easy to connect to the server immediately and get maximum response speed. The system does a great job with multi-page web forms, and has additional extensions for processing improvement, such as website caching.
- Security. This is actually one of the main reasons to transition from WordPress to Drupal. Drupal is the least vulnerable to criminal hacking. This is why the White House's official website is based on it. All the minor errors in SQL performance that were a problem before have been resolved completely.
- Flexibility. While WordPress employs themes and plugins, Drupal uses modules and extensions for configuration processing. This allows for delicate detailing to make your site unique. Most packs must be installed and set up by the user, which is not that easy with WordPress. An experienced developer can achieve better results! In Drupal there is an option to integrate such useful functions as Shopify, Twitter, Yoast and others through the vast variety of modules.
- Language selection. Drupal's system supports more than one hundred languages (though some are only partially adapted). So even in base settings, Drupal is the best solution for polylingual pages.
- Deep taxonomy system. Drupal is so convenient and flexible that it can be adapted for almost any demand and requirements. It is capable of storing a large amount of data. All possible content types — from forum messages to news articles to blogs etc. — will be categorized in the common data catalog. Nesting of any depth is available.
- Drupal's expanded system of extensions control that simplifies user administration is more effective than in WordPress. It is possible to differentiate user access to certain data by role models.
Steps to Migrate from WordPress to Drupal
Let’s have a look at the whole Wordexpress XML to Drupal migration:
- First we go to the WordPress admin panel, Tools > Export and choose "All Content", then click "Download Export File" and save this file on your computer’s hard drive.
- Create a backup copy of the project site in case something goes wrong and you need to discard changes. You will be able to delete all Drupal files and download the copy with the initial parameters restored.
- Install Drupal in the same folder as WordPress. This way, you can still access administrative functions when the website stops working. Now the Drupal-based resource will be on the website address.
- Next, check the server's systemic characteristics: PHP version (5.2.5 and higher), MySQL (at least 5.0.15) or MariaDB (from 5.1.44), Apache (from 1.3).
- Download and unzip the installation package. Connect to the server by SSH and go into the root directory. The actual version is downloaded on the
sudo wget [download URL]request. To find the right address, visit the Drupal download page and continue with "Recommended Release." Right-click on download button, choose "Copy Link Location", and insert the address by pressing Shift + Insert.
- Unpack the installation package and set Apache ownership. Then delete the .tar.gz file through the
sudo rm [file name]command.
- Now create a database. Using SSH, connect to the server and enter MySQL/MariaDB CMS with the
sudo mysql –u root –poption. As is probably obvious, we create a database through
CREATE DATABASE [base name].
- Create the first user and provide it with maximum authorization.
GRANT all ON [base name].* TO [user nickname]@localhost IDENTIFIED BY '[password]'.
- Quit the CMS application by executing the command
- To complete the installation, go to your browser and open your site. When the installation page is displayed, it will give you different options. Choose the "Standard" installation and click "Save and Continue". Do the same on the next installation page.
- The next step will be to select the needed CMS: specify the connection parameters by entering the user’s name and password that you've created. Click "Save and Continue".
- Insert the site’s info and create an administrative account. Specify data in all the necessary boxes and click "Save and Continue".
- Right-click on the download link
.tar.gz"Modules", then click "Install New Module" and insert the copied address to "Install From a URL". Click "Install".
- All the actions above are repeated to install the WordPress Migrate module. We go back to the modules page and enter the Migration section. Check the boxes to all required options (Migration, Migrate UI, Migrate Example and Migrate) and save the configuration.
- Create a private folder in the website root. Now enter the Drupal administrative panel and click "Content". Switch to the "Migrate" tab and click "Import from WordPress". Set the path to the files you intend to download by going to Configuration > Media and inserting the full path for folders. Save the configuration.
- From here, you’ll be pinged back to the transition page, where you’ll click "Browse" and select XML of WordPress export (WXR), which was stored on your computer’s hard drive. Click "Next".
- Decide whether to import WordPress users or create a new Drupal user with all post objectives. Choose and click "Next".
- Select the content import method. The best option is to mark posts as "Article" and pages as "Basic Page". This allows the importer to start converting blog posts. Set the parameters and move to step 6, which converts the webpage.
- The last step is to make sure that all the import parameters are set correctly. Check the data once again and click "Save Import Settings and Run Import".