The challenge
Comercial Moya distributes food service and industrial machinery from Coquimbo, Chile, with a branch in Copiapó, and sells B2B: its website doesn’t close a purchase, it requests a quote. The relationship started in 2018, with the website they had back then and its hosting; in 2022 the site was hacked and I had to clean it up, document what happened and harden the platform.
That brought the underlying problem into view: an Elementor build that was hard to maintain, running on PHP 7.4, already out of support, and with bots saturating the server. Patching it was going to cost more than rebuilding it.
What I did
I rebuilt the site from the theme up instead of giving it a facelift: a custom child theme, no visual builder, and the server work in parallel.
- New website with an online quote tool for the B2B catalog, on a custom child theme
- Migration of the Elementor templates to native HTML/PHP
- Upgrade from PHP 7.4 to 8.2, plus WordPress core
- Isolated Plesk staging with hardening (htpasswd + X-Robots-Tag), to keep production untouched
- Root cause of the slowness: bots saturating PHP-FPM, diagnosed and mitigated
Result
The server went from taking 2.60 seconds to respond to 0.20 on cacheable pages: 92% less waiting before the page starts reaching the browser. The new site runs on PHP 8.2, without a visual builder, and its B2B catalog receives between 7 and 10 quote requests per week.
The relationship is still active with monthly maintenance and hosting, eight years after the first quote.
The starting point
A distributor operating since 1978, with a heavy Elementor site, PHP at end of life and a 2022 hack that had to be cleaned up and documented. Rebuilding the website was half the problem: the server took 2.6 seconds to start responding.