At rtCamp, we always believe in seamless migration, so we understand how every project handled by small or enterprise organizations can face pushback when aligning digital initiatives with WordPress. To help you figure out and create a simplified migration strategy, we’ve scoured our customer profiles to come with a list of common – and effective – solutions that will help to cope with the mistakes one can make in action.
To ensure that your migration is seamless, you need to avoid the kind of mistakes which can help creating a solid foundation for migrating to WordPress effectively.
Table of Contents
Common Mistakes Before Migration
Inadequate Planning
Jumping into migration without a clear plan, without understanding the full scope of the project can lead to unexpected complications. You might lose essential data, or features and functionality that needs to be transferred, or you may miscalculate the required resources.
One of the main reasons to create a detailed migration plan is to avoid loss in user experience, so start by mapping out how – content, functionality, and design elements should be migrated without affecting performance. Set a timeline, allocate resources, and involve key stakeholders from the start.
Missing out on critical data
Failing to backup your site properly can lead to serious issues during migration; if something goes wrong, you risk losing data, content, or even your entire site. Accidental deletions without a backup can significantly harm your rankings and SEO performance.
It’s common for some folders or images to be missed out during backups, which is why regular backups should be a fundamental part of your WordPress maintenance routine. Store these backups in multiple secure locations to ensure it is easily retrievable if needed, although it’s recommended to always automate your backups. Use a plugin or manually create backups with cPanel/File Transfer Protocol(FTP).
Not Cleaning Up Your Data
Before migrating, take the time to sort your data, you can easily clean up revisions to avoid any unnecessary data being transferred, saving time and resources required for migration. Remove any unnecessary or revision data to ensure that only relevant and useful data is transferred.
Another mistake of data cleaning is migrating unsupported file types to WordPress, creating security vulnerabilities. To mitigate this risk, it’s essential to identify any unsupported files before migration. Once identified, change the file permissions to read-only, preventing them from being altered or converted to other formats. This safety measure will help to improve the safety of your site against potential threats related to unsupported files.
Not Disabling Revisions
Many users forget to disable post revisions during the migration process. By default, WordPress creates a revision for each post or page every time it is updated, including during migrations. If revisions are not disabled, each migration script run can create multiple unnecessary iterations, leading to increase the database size and affecting performance issues.
To avoid this problem, ensure that you disable revisions before running your migration scripts. This will prevent the creation of dummy revisions and help maintain a clean and efficient database throughout the migration process.
Not Reviewing Hosting Requirements
Migrating to a hosting environment that doesn’t meet WordPress requirements can cause a problem as WordPress has specific server requirements, such as PHP version, database compatibility, and exceeding allocated memory limit.
You can check that your new or existing host meets the minimum WordPress requirements, including PHP version 7.4 or higher, MySQL version 5.6 or MariaDB version 10.1 or greater, HTTPS support, and has sufficient memory (128 MB or more).
Neglecting to Test Plugins and Theme
Often it is observed that during migration planning, assumptions are made that all plugins and themes will work perfectly for our data size on WordPress. But, the features or custom functionalities from your old platform may not be compatible or unable to accommodate your current data size. It can slow down the migration process and performance of the new site.
To avoid it, create a staging site to test changes without affecting your live site. This allows you to experiment with different plugins or themes safely. Deactivate the theme and plugin one by one to identify any conflicts.
Review all plugins, themes, and custom scripts for compatibility. If you are dealing with large data sets, try to do load testing with selected plugins and themes. Test them in a development environment to ensure they work correctly before proceeding.
Not Selecting the Right Content Editor
There may be misalignment between the content and frontend development teams regarding the structure of custom blocks, which could create complications during migration. Therefore, it’s better to clear any misconceptions regarding whether the client prefers to continue using the Classic Editor or transition to Gutenberg.
Start by discussing with the client to confirm their interest for either the Classic Editor or Gutenberg. Make any necessary adjustments to the content based on their decision before starting with the migration. Next, maintain clear communication with the frontend development team and developers working on migration regarding the custom blocks structure or code changes, so broken blocks can be avoided — and editors are comfortable with the new setup.
Not Disabling emails and socials
One thing to make sure of when running migrations is to not trigger any social services that might be set up. This includes sending posts to Facebook, Twitter, or email. We don’t want to spam subscribers with hundreds, if not thousands of emails and notifications in a row, as those items are migrated in. Make sure as part of the migration plan you account for this.
Disable Email Notifications Until Go-Live: To prevent confusion or disruption during the migration, consider disabling email notifications of new servers until the new site is live.
Common Mistakes During Migration
Not Testing in a Staging Environment
The biggest mistake that people often make is migrating to a live environment without testing can lead to unexpected downtime, broken pages, and loss of data.
Always test the migration in a staging environment first. This allows you to spot and resolve any issues before pushing the site live.
On your staging site as you don’t want Google to index your test content, WordPress offers the option to avoid search engines to crawl your site temporarily.
To modify these settings — go to Dashboard > Settings > Reading > Search Engine Visibility.
At rtCamp, we use .htaccess rules as well, which can be placed behind authorization to prevent bots from accessing the website. This dual approach helps us to maintain control over how search engines interact with your website.
Inefficiently Managing Databases During Migration
Incorrectly migrating or exporting the database will get your website nowhere, can lead to incomplete content migration, broken relationships between posts, or user account issues.
When migrating the database, ensure that all tables and relationships are maintained. Use the right migration tools or keep compatible formats like XML or CSV to ensure a smooth and accurate transfer of your database content.
Not Maintaining a Log During Database Migration
Failing to keep a detailed log of database migration operations is a problem people tend to miss out. Without a log, developers cannot track the status of records during and once the migration process is complete, it increases the difficulty to identify issues or verify successful transfers.
Always start migration with a real-time, detailed logging system that records each operation performed on the database. The WP-CLI script should include details like:
- Command Effects: The information of how data will change, when user runs a command.
- Data: Breakdown of data already imported, and still left to import.
- Logging: A record of all important actions in the command line interface (CLI).
So it will be easy to identify any missing data or errors in the data. Also, we need to document the process if any manual review is needed by the client or the team.
Not Notifying Developers About Migration Failures
If migrations run overnight or during off-hours, and developers are not informed, or they remain unaware of any script failures, it can potentially lead to prolonged downtime or unresolved issues.
It’s a good practice to set up an email notification system that would alert the developers immediately if a migration fails. The notification should include all the details about the failure along with relevant error messages so that prompt action can be taken on time.
Failure to Connect with the Server While Fetching Data
Excessive connection requests to the data provider server can interrupt the migration process, and if the server runs out of space, it can lead to significant errors.
Encountering connection issues while attempting to fetch data during migration or a poorly written code can cause infinite loops, resulting in migration failures. There are three crucial steps to avoid it.
- Implement Retry Logic: Add a delay (sleep time) before retrying a connection to the server. This helps prevent overwhelming the server with requests.
- Set Retry Limits: Define a maximum number of retry attempts. If the set limit is exceeded, then an automated response sends out a notification to the developer along with the exit command details to avoid further complications.
- Ensure Adequate Server Space: Before starting the migration, verify that there is sufficient storage available on the server to handle the data being migrated. Allocating a dedicated space can easily prevent any interruptions caused by insufficient space.
Not Taking Backups After Each Command
Taking a backup after each command run during the migration process is crucial. If an error occurs, having a backup allows you to restore your site to its last stable state without needing to rerun all previous commands from the start.
“Error Establishing a Connection With Your Database”
This error is often shown at the end of the migration process, leaving you confused about what went wrong.
To get detailed error messages, you can enable debugging on WordPress. Open your wp-config.php file and locate the following line:
php
define('WP_DEBUG', false);
Change it to:
php
define('WP_DEBUG', true);
After saving the file, re-run the migration script. This action will create a debug.log file in your wp-content directory, which should contain specific error messages related to your database connection issue.
Identifying the exact problem code is crucial, as it allows you to search for solutions online tailored to your specific issue.
Common causes for this error include incorrect database credentials in your wp-config.php file or problems with your new hosting server’s database configuration. Always ensure that your database name, username, and password are correct and match those provided by your new hosting provider.
If you continue to experience issues, check if the database server is operational and verify that firewall settings permit connections from your WordPress site. By addressing these factors, you can resolve the connection error and restore access to your database.
Flow of Migration Without Prioritization
If you fail to plan strategically and attempt to migrate everything at once, especially with large datasets, the process can quickly become overwhelming. Issues may arise with specific content types or files, potentially affecting related data. With thousands of web pages and images, it becomes difficult to manage and can lead to data loss.
Start by prioritizing the essential content first (e.g., core pages, blog posts). We can also use some tools that allow us the parallel processing of multiple assets at the same time. Generally for enterprises, we prefer to put focus in a way that related data is migrated first to ensure that no dependent data is missing. Our desired flow is-
- Sub-sites (Multisite)
- Menus
- User
- Media
- Taxonomy
- Post, Page, and Custom Post Types
Tmux or Screen tool can be used while running long commands on the server to keep them running in the backend. It can also help run commands parallel to save some time.
Ignoring URL Structure & Redirects
Not accounting for changes in URL structure between platforms and mismatched URL structures can lead to broken links and issues, harming your search rankings and user experience.
Analyze your old site’s URL structure and map it to the new one. Implement proper 301 redirects for any changed URLs to preserve SEO rankings and ensure users and search engines are directed to the correct pages.
Coding Mistakes During Migration
- Not Disabling Term Count During Taxonomy Migration
When migrating taxonomies, many users overlook the importance of disabling term count. This oversight can lead to performance issues and increased memory usage during the migration process.
Not disabling term count can put unwanted load on your server, potentially leading to migration failures or slowdowns. It’s important to validate that term counts are disabled to facilitate a smoother migration experience.
- Not Batching Commands to Avoid Memory Limit Exceedance
Executing large commands all at once can exceed your server’s memory limit, resulting in migration failures or timeouts.
To avoid this issue, structure your migration commands into smaller batches. This approach helps maintain server performance and ensures that the migration process completes successfully without overwhelming the system.
- Not Enabling Pagination and Setting Batch Limits
Migrating large datasets without pagination can overwhelm the system and lead to errors.
Our recommendation is to enable pagination and setting appropriate batch limits for your data migrations. This will help you to process records chronologically, reducing the likelihood of performance degradation and ensuring a more controlled migration process.
Not Supporting Delta Migration
During migration, if you do not account for changes made after the initial migration, it can lead to inconsistencies between the old and new environments. Sometimes, we need to plan a delta migration based on the current site’s blog posting frequency, so the more the blog posting is, the higher the chances of being prepared for the delta migration.
Make sure your commands support delta migrations, which will allow you to transfer only the changes made since the last migration. This practice is crucial for keeping data synchronized and up-to-date without unnecessary duplication, ensuring a smooth transition to your new WordPress environment.
Delta migration generally comes in the process of content freezing for editors while planning to launch the new site, so this must be communicated with the client and between the team members.
Example: we can add “_original_post_id=ID” in the post_meta table, so we can relate the migrated post with the original post id.
Not Accounting for SEO Factors
We have seen many folks overlooking SEO elements during migration, such as meta descriptions, alt tags, and internal links. Ignoring these factors can result in a significant drop in search engine rankings.
SEO has a great impact on the business success of your website, search engines are one of the biggest sources of traffic for your website. Audit your current site’s SEO setup and re-initiate critical SEO factors like metadata, headings, image alt attributes, and internal linking in the new WordPress site. Use SEO plugins like Yoast or Rank Math to monitor and manage your site’s SEO during the migration.
Rockport Institute was able to retain its SEO integrity post migrating to WordPress.
Not Using CLI for Import/Export
One common mistake during WordPress migration is relying solely on graphical interfaces or manual methods to handle import/export tasks. These methods are prone to errors, especially when migrating large databases or numerous files. Manual export/import operations can time out, become corrupted, or lead to incomplete transfers.
Instead, always ensure to use the Command Line Interface (CLI) for handling database exports and imports. Using WordPress CLI (WP-CLI) or even MySQL commands ensure a faster, more reliable migration process. With CLI, you can execute commands directly on the server, by eliminating some limitations set by browser-based interfaces, to ensure data integrity and probability of errors during the transfer process.
Forgetting to Disable Caching Before Rerunning Commands
A common issue during migration is forgetting to disable caching before re-running commands or making changes. If caching is enabled, old data can interfere with the migration process, causing the changes you make not to take effect immediately.
To avoid this, always disable any caching mechanisms before rerunning migration-related commands. This should be maintained for both server-side caching and any caching plugins you may have installed on WordPress. By disabling caching, you ensure that you’re working with the latest data and that your changes are accurately reflected, helping prevent unnecessary complications during migration.
Legacy Data storage
Not cross verifying the data before deleting the legacy data during migration can result in loss of important data without being properly migrated.
Storing legacy data into meta values until after the site launch and stable usage of newly created sites ensures that no critical data is lost during the migration process.
Data Permissions: Assigning Proper Roles and Capabilities to Users
Importance of relevant permissions is useful when assigning appropriate roles and capabilities to users within your WordPress site. If low-level users are granted unnecessary permissions, they can gain unauthorized access to sensitive data or functionalities, creating a security risk for the website and the data.
Authorization for APIs: Ensuring that proper authorization measures are in place for any REST API or GraphQL endpoints that have been migrated from old sites. This step is essential to safeguard your data and maintain secure interactions with these endpoints, preventing unauthorized access and ensuring that only authorized users can perform specific actions.
Common Mistakes Post-Migration
Neglecting Post-Migration Testing
Assuming that your site will work perfectly post-migration is only possible if all elements fall into place according to your laid out plan. But we always make sure to recommend testing your new space.
Small issues like broken links, missing images, or slow loading times may not be immediately visible but can negatively affect user experience once the site goes live. And it would further affect the website if you take it down post migration or try to solve the bugs while live.
Performing a full site audit after migration is necessary. Test all functionalities, including forms, navigation, user accounts, and media. Check for broken links and missing content, and verify that the design looks as intended across different browsers and devices.
Overlooking Site Speed and Performance
A slow website will marginally impact the performance, leading to poor user experience, lower search engine rankings, and higher bounce rates.
Use caching plugins (e.g., WP Super Cache or W3 Total Cache), optimize images, and enable GZIP compression. Test the site’s speed using tools like Google PageSpeed Insights or GTmetrix and address any performance issues immediately.
Learn how we helped our client improve their site speed, increasing their lead submissions by 49%.
Ignoring Security
According to a research by Kaspersky, the majority of vulnerabilities—over 93% are associated with plugins, while only a small fraction are attributed to the core software. This only shows the importance of regularly updating and securing all components of your WordPress site.
Harden WordPress security by installing security plugins like Wordfence or Sucuri, changing default login URLs, using strong passwords, enabling two-factor authentication, and keeping your WordPress core, plugins, and themes up to date.
Not Monitoring SEO Performance
Migration can often result in temporary drops in SEO rankings, and failing to monitor your site’s performance during this time may cause you to miss valuable recovery opportunities.
To stay on top of your SEO health, regularly check your performance using tools such as Google Analytics, Google Search Console, and Ahrefs. Make sure that your site is re-indexed by search engines and that there are no issues with crawling or indexing. Keeping this approach will help you quickly address any potential problems and optimize your site’s visibility in search results.
To prevent this, utilize tools like the Broken Link Checker plugin to identify and fix any broken links throughout your site. Ensure that all internal links are updated to reflect the correct new URLs, maintaining a seamless navigation experience for your users.
Informing users for resetting user credentials
After migrating a WordPress site, user credentials may not function correctly due to changes by improving database structures and security protocols. This can lead to login issues and potential security vulnerabilities if users continue using old credentials.
After completing the migration, a wise course of action is to send a notification alerting all users via email to reset their passwords. This ensures that they can securely access their accounts with updated credentials, eliminating any chance of unauthorized access and improving the overall security of the newly migrated site.
In Conclusion, migrating to a WordPress site can seem complex, but with the right approach, it can be completely straightforward. At rtCamp, we believe that success comes from paying attention to the details and keeping the needs of your users front and center. We’re here to help you through the process with a clear, step-by-step plan to help you complete the migration as smoothly as possible. With 31 WordPress contributions, our team’s expertise ensures that your new site not only works the way you need it to, but also improves efficiency and user experience.
Here’s why our customers trust us-
- FleetNet America successfully migrates to WordPress
- Everyday Carry moves from custom CMS to WordPress
- rtCamp helps Dealertrack move from AEM to WordPress
Get in touch with us to understand how rtCamp can help you with your migration needs!