Blog
Actionable tips and updates to help you ship plugins, themes, and client sites faster
7 min readHow to clone a WordPress site without the copy touching production
A clone copies the credentials too. The copy still holds your live Stripe keys, your production S3 bucket and your search index, and its cron starts firing an hour later. Here is what to cut before it does.
7 min readThe WordPress site demo you send a client, and what it does behind your back
A demo of an unlaunched WordPress site is a real install with real credentials in it. It can email your client's customers, get indexed under their brand, and charge a real card. Here is what to switch off before you send the link.
7 min readWhat a WordPress staging plugin can test, and what it cannot
A staging plugin is PHP running inside your site, so it can copy your WordPress install but not the server underneath it. Here is where that line falls, and which tests land on the wrong side of it.
8 min readHow to create a WordPress staging site, and how to check it is really a copy
Three ways to make a staging site, and the six ways a staging site quietly stops matching production so your test passes when the change would break the live site.
8 min readHow to fix an Unknown collation error without quietly downgrading your database
The usual fix for Unknown collation is to find-and-replace utf8mb4 with utf8 in the dump. That makes the error go away and caps the database at three-byte characters, silently, forever. Here is how to test the move first and check what it cost.
7 min readHow to test a WordPress table prefix change before it locks everyone out
Every guide tells you how to rename the tables. None tell you how to prove it worked. Being able to log in is the weakest test there is, and here is what it misses.
7 min readHow to check a WordPress migration did not corrupt serialized data
Broken serialized rows do not throw errors. WordPress hands your plugin a string where an array should be, the settings page renders defaults, and nothing in the dashboard says anything is wrong. Here is how to assert it instead of eyeballing it.
7 min readHow to test that your WordPress plugin activation routine actually ran
Activating a plugin on a site where you have already activated it proves nothing. Here are four documented reasons the activation hook silently does not run, and a routine that catches each one.
6 min readHow to test a WordPress plugin's upgrade routine (and why yours probably passes for the wrong reason)
Deactivating and reactivating your plugin does not test the upgrade path, because WordPress does not deactivate a plugin when it updates it. Here is a routine that tests the path your users actually take.