Umbraco to WordPress migration: Development and testing
This is where your migration takes shape. The development and testing phase focuses on building a WordPress site that matches or improves upon your existing Umbraco site in both function and experience.
We divide this stage into two key parts: Development and Testing.
WordPress website development
Enterprise-grade WordPress development enables design consistency, flexible content management, and scalable functionality. Whether you’re replicating your current UI or modernizing the experience, the development phase ensures your new site is built on a stable and extensible foundation.
Core functionality
The first decision you’ll make is whether to use an existing theme or build a custom one. That depends on your:
- Design goals: Recreate the original Umbraco look or redesign with modern UI patterns
- Budget and timeline: Go with a starter theme for faster delivery, or invest in a fully tailored build
For most enterprises, we recommend a custom WordPress theme, fully compatible with the Gutenberg block editor. This allows for flexible layouts, reusable components, and clean content management.
Ensure your new theme captures the content hierarchy from Umbraco. This includes menus, taxonomies, and nested page relationships, all aligned with a smooth user experience.
Custom features
Some Umbraco features don’t have direct WordPress equivalents. In such cases, you can recreate them using:
- Custom post types
- Custom Gutenberg blocks
- Custom API integrations
For example, if your Umbraco site used a distributor locator or an interactive calculator, rebuild them in WordPress using tools like the Google Maps API or custom React/Vue components inside Gutenberg.
Here’s a simplified version of a custom Gutenberg block for a site-wide banner
wp.blocks.registerBlockType('custom-blocks/hero-banner', {
title: 'Hero Banner',
category: 'layout',
edit: () => wp.element.createElement('div', {}, 'Hero Banner Block Editor'),
save: () => wp.element.createElement('div', {}, 'Hero Banner Frontend Output')
});
Custom features should be built only where WordPress plugins can’t meet requirements. Always evaluate existing plugin options first.
User management
User roles and permissions in Umbraco can be closely replicated in WordPress.
- Map Umbraco roles (e.g., Editors, Publishers) to WordPress roles like Editor, Author, Contributor
- Use the User Role Editor plugin to fine-tune access levels
- Migrate user accounts securely, ensure password hashing complies with WordPress security standards
Integrations
A successful migration isn’t just about content and design, it’s also about ensuring your business tools and systems continue to work seamlessly in the new environment.
Plugin configuration
Start by identifying WordPress plugins that can replicate or enhance the functionality currently handled by Umbraco. For most use cases, you’ll find high-quality, well-supported plugins that can take over with minimal friction.
- Use Yoast SEO or Rank Math to manage on-page SEO and metadata
- Use Gravity Forms or WPForms to rebuild your contact or lead generation forms
- For eCommerce functionality, WooCommerce is the go-to option
Select plugins with active support, ongoing updates, and enterprise compatibility, especially for performance and security.
Third-party service integration
If your site connects with external systems like analytics, CRM, or marketing platforms, those connections need to be re-established in WordPress.
Examples include:
- Google Tag Manager for analytics and event tracking
- Salesforce Pardot for marketing automation and lead scoring
- LiveChat, Zendesk, or similar platforms for real-time support
These can be integrated using existing WordPress plugins or custom-built solutions via the WordPress REST API or webhook-based middleware.
Legacy system bridging
For tools that don’t integrate directly with WordPress, middleware can act as a translator between systems. Custom connectors can sync data between your legacy tools and WordPress without manual intervention.
If your Umbraco site relied on macros or inline Razor scripts, you can recreate their behavior using:
- WordPress shortcodes
- Custom plugins
- Gutenberg dynamic blocks
These provide the same dynamic rendering capabilities while remaining native to the WordPress architecture.
Web testing
Web testing emphasizes quality engineering by rigorously verifying functionality, from unit testing individual components to integrated testing of interconnected systems.
Functional testing
This phase verifies whether individual components and integrated systems work as expected.
- Unit testing: Test standalone components such as forms, menus, sliders, and plugin features to confirm they function properly
- Integrated testing: Validate end-to-end flows, e.g., form submissions triggering CRM entries or search results rendering correctly with filters
Interactive elements and dynamic behaviors should function at parity with, or better than, the original Umbraco experience.
Content and design validation
Content accuracy and visual fidelity in UX are key to preserving trust and brand consistency post-migration.
- Review migrated content to ensure all text, images, media, and metadata are correctly displayed
- Validate layout structure and styling across pages
- Test responsiveness across multiple screen sizes and major browsers (Chrome, Firefox, Safari, Edge)
This ensures that your content not only arrived intact, but is usable and visually consistent everywhere it appears.
Performance testing
A high-performing site improves user experience and SEO rankings. Measure and optimize across three fronts:
- Page speed: Use tools like Google PageSpeed Insights, GTmetrix, and Pingdom to benchmark performance
- Optimization: Compress images, enable lazy loading, and implement caching via tools like WP Rocket or W3 Total Cache
- Asset management: Minify and defer unnecessary scripts and stylesheets to reduce initial load times
Scalability testing
Simulate high-traffic conditions to test how your infrastructure responds under load. This is especially important for enterprise-grade deployments with peak usage periods.
- Use tools like LoadImpact or k6 for load simulation
- Monitor database performance, server CPU/memory usage, and response time under stress
User Acceptance Testing (UAT)
UAT bridges the gap between technical build and real-world usage. It validates whether the site works for actual users, content creators, marketers, administrators, and customers.
- Stakeholder engagement: Invite relevant internal users to test workflows in realistic scenarios
- Usability testing: Evaluate how intuitive the dashboard and editing interfaces are for non-technical users
- Feedback loop: Collect feedback methodically and incorporate improvements iteratively
SEO performance testing
Preserving search performance is essential post-migration.
- Confirm all planned 301 redirects are working as intended
- Use tools like Ahrefs, SEMRush, or Screaming Frog to audit the new site for issues like missing metadata, broken links, or duplicate content
- Ensure SEO plugins are configured correctly and sitemap submissions are verified with Google Search Console
Accessibility testing
The new site should meet modern accessibility standards, ensuring usability for all users, regardless of ability.
- Use tools like Google Lighthouse, axe Accessibility Checker, or WAVE to test against WCAG 2.1 guidelines
- Validate keyboard navigation, ARIA labels, color contrast, and semantic HTML
- For more on this, check our web accessibility best practices
Backup and recovery testing
Test your disaster recovery plan before launch. This means ensuring that:
- Daily backups are configured correctly
- Restoration from backups works without breaking functionality or losing content
- Backup frequency matches your business continuity needs
By combining rigorous functional checks with performance, SEO, and accessibility validation, you ensure that the WordPress site not only matches your Umbraco implementation, but improves upon it. The result: a secure, scalable, and user-friendly platform that’s built to last.