Joomla and WordPress migration
Is your Joomla or WordPress site hacked or stuck on old PHP? We rebuild it on a modern, secure stack, keeping your content, your rankings and an admin panel

Running a Joomla or WordPress site in 2026 means living with PHP. Every new vulnerability in the PHP runtime, in the CMS core or in one of the dozens of extensions installed over the years is a new way in. When the next critical flaw is announced, the choice is often between patching in a hurry and taking the site offline.
We faced exactly that choice. After a critical PHP vulnerability, we took our own sites offline, including selfget.com and sistemistica.it, both built on Joomla for more than a decade. Instead of reinstalling the same stack and waiting for the next incident, we rebuilt them from scratch on a modern platform. Both are back online, faster than ever, and with the best search performance they ever had.
Now we offer the same migration to other site owners.
Who this is for
- Your Joomla or WordPress site was hacked, or you suspect it was: spam pages, links to unknown sites, a defaced homepage, redirects you did not add.
- Your site runs on an old PHP or CMS version and upgrading breaks templates and extensions.
- Your hosting provider asks you to upgrade PHP, or already took the site offline.
- You spend more time applying security updates than publishing content.
- Your site is slow and you are losing positions in Google.
What you get
Security by design. The new site has no PHP, no plugin marketplace and no public file uploads: only administrators can upload files. There are no extensions to keep up to date and no admin URL known to every bot on the internet. Administrator sign-in requires two-factor authentication (MFA). We never copy legacy files: only your content moves from the old database, and images and downloads are reviewed one by one, so a hidden webshell or injected link cannot follow you to the new site.
A modern tech stack.
- Backend API in Node.js and TypeScript (Fastify), with input validation on every request.
- MongoDB database for content and settings.
- Server-side rendered web app in React, so search engines and visitors get complete HTML on the first request.
- Docker deployment behind Cloudflare, with media files on object storage.
Performance. Pages are light and rendered on the server: no theme frameworks, no stacks of plugin scripts, no tracking cookies. Fast pages are better for visitors and for Google's Core Web Vitals.
Your SEO is preserved, then improved. Before going live we map every URL of the old site. Each page we keep answers a permanent 301 redirect to its new clean URL, and pages we drop answer 410 so search engines forget them quickly. The new site generates its sitemap, per-page titles, descriptions and canonical URLs, and social sharing tags. After launch we watch Google Search Console for broken URLs and add any missing redirect, so old links do not become lost traffic.
You keep an admin panel. Moving away from a CMS does not mean editing code to publish a page. You get a private admin console, protected by two-factor authentication, where you create and edit pages in Markdown, upload images, manage downloads and publish or unpublish content. Specific data of your site gets its own admin screens, for example product catalogs, archives or approval queues.
No lock-in to the past. Twenty years of extensions usually leave behind features nobody uses. We review every feature with you and decide together what to keep, what to simplify and what to drop. You end up with a smaller site that does what you need, and nothing else.
How it works
- Inventory. We analyze the old site: database, extensions, templates, files, URLs and traffic. If the site was compromised, we identify the injected content.
- Decisions. For each feature we agree whether to keep, simplify, replace or drop it.
- Specification and design. We write down requirements, URLs and the data mapping, and propose a visual identity that keeps your brand recognizable.
- Build and data migration. We build the new site and import your content with scripts that can be run again and verified, so nothing is lost or retyped by hand.
- Launch. We test the site with you, switch DNS, activate the redirect map and resubmit the sitemap to the search engines.
Real examples
- selfget.com: the site you are reading. A Joomla 3 site with product pages, documentation, blog, downloads, customer accounts with license keys and an update server for installed extensions.
- sistemistica.it: an Italian portal about lottery games running on Joomla 1.5, with editorial pages, a glossary, downloads and draw archives. The new version adds draw archives updated automatically, with an admin review queue.
Each migration took less than 3 days, not months.
Contact us
Tell us the address of your site, the CMS and version it runs on and what problem you have.