Database Migrations and Updates — a practical guide to WordPress plugin DB upgrade with clear examples you can reuse in real projects.
WordPress Plugin Development Series (31/95). Prefer one article? Read the complete WordPress plugin development tutorial.
Short description
Compare stored DB version to plugin DB version on `plugins_loaded`/`admin_init`, then migrate and update the option.
Versioned upgrade
define('ACME_DB_VERSION', '1.1.0');
add_action('plugins_loaded', function () {
if (get_option('acme_db_version') === ACME_DB_VERSION) {
return;
}
// run migrations...
update_option('acme_db_version', ACME_DB_VERSION);
});