How I Traced a Data Leak Between Two WordPress Sites to a Redis Cache Key Collision
· 9 min read
Multiple WordPress sites sharing one Redis instance can silently leak data between each other. Here's how I diagnosed and fixed it.
Technical deep-dives from real client work. How I diagnosed, fixed, and prevented WordPress issues.
· 9 min read
Multiple WordPress sites sharing one Redis instance can silently leak data between each other. Here's how I diagnosed and fixed it.
· 9 min read
A WooCommerce store had delayed order emails, failed subscription renewals, and thousands of stuck Action Scheduler jobs. The fix: replacing WP-Cron with a system cron.
· 8 min read
How I traced missing WooCommerce order emails and failed subscription renewals to a silently broken WP-Cron, and replaced it with a reliable system cron.
· 10 min read
A WooCommerce store's database had grown to 18GB thanks to 26 million rows in the Action Scheduler tables. Here's how I cleaned it up and prevented it from happening again.
· 8 min read
A WordPress site was loading 12MB of abandoned plugin data on every request. Here's how I found the bloat in wp_options and cut page load times in half.
· 9 min read
Diagnosing and fixing WooCommerce Action Scheduler table bloat that grew to 12 million rows, causing 30-second page loads and checkout timeouts.
· 14 min read
Diagnosing silent data loss after migrating a WooCommerce store to HPOS — broken tracking plugins, corrupted customer lookup table, and the fixes that restored it all.
· 10 min read
Step-by-step HPOS migration for a large WooCommerce store — finding incompatible plugins, fixing custom code, and verifying data integrity with WP-CLI.
· 6 min read
WordPress 6.9.2 security patch caused white screens across thousands of sites. Why it happened and how maintenance plans prevent the damage.
· 8 min read
A practical guide to diagnosing and fixing the WordPress white screen of death, from a developer who deals with it regularly.
· 5 min read
Investigating why 83 PayPal subscription renewals were failing in WooCommerce. The root cause: the PPCP plugin never successfully stored vault tokens for any subscription.
· 6 min read
How I diagnosed and fixed a WooCommerce database crisis where MariaDB was consuming 1479% CPU with queries running for 376 seconds. The root cause was a transient race condition.
· 5 min read
Discovering and removing a sophisticated cryptominer from a Linux server that used 14 different persistence mechanisms including systemd services, cron jobs, and immutable file attributes.
· 6 min read
How too many PHP-FPM workers caused MariaDB to be killed by the OOM killer. The math behind pm.max_children and a formula for getting it right.
· 9 min read
How I used WP-CLI to automatically generate and apply meaningful alt text to 2,846 images on a WooCommerce site, handling edge cases like size suffixes and generic filenames.
· 7 min read
Investigating a CloudPanel server compromise where an attacker created an admin user via clpctl. Tracing the attack through auth.log, checking for backdoors, and hardening the server.
· 12 min read
Solving the challenge of calculating WooCommerce shipping rates programmatically in Action Scheduler background jobs where WC()->session doesn't exist.
· 6 min read
How LiteSpeed's Guest Optimization CSS handling caused a flash of unstyled content on sites with splash screens, and the settings adjustments that fixed it.
I manage 70+ WordPress sites for UK agencies and businesses. Whether you need ongoing maintenance, emergency support, or a one-off performance fix — I can help.
View Maintenance Plans Get in Touch