Addon System
20+ auto-detected integrations out of the box — and a clean path for building your own.
Auto-detection, zero configuration
PerfLocale watches which plugins and themes you have active. If WooCommerce is on, the WooCommerce addon turns on. If you deactivate Yoast, the Yoast addon goes silent. There’s nothing to wire up, no settings page to find, and no compatibility flag to remember.
20+ integrations bundled
Every integration ships inside the same plugin file. Install PerfLocale and you have all 20 ready to activate the moment their host plugin shows up. See the full list →
Build your own in two steps
A custom addon is one class implementing AddonInterface, registered on a single action hook. That’s the entire wire-up — no service container, no factory, no boilerplate. You can ship it from a child theme, an mu-plugin, or your own plugin: PerfLocale doesn’t care where the file lives, only that it announces itself on the hook.
Safe install. Clean uninstall.
Addons can have their own database tables, options, capabilities, and cron jobs without polluting your site. PerfLocale namespaces everything an addon owns, runs schema upgrades automatically, and — on uninstall — reads the addon’s declared manifest to remove every trace it left behind. No orphaned rows. No leftover meta. No "what was that table for?" three months later.
One bad addon won’t take down your site
Every addon boots inside its own safety net. If a third-party addon throws an error, PerfLocale catches it, surfaces a clear admin notice telling you which one needs attention, and lets the rest of the system keep running. Your front-end stays up. Your other integrations stay up. The broken addon is the only thing that stops.
Full reference: capability interfaces, migration patterns, uninstall manifests, and the addon lifecycle.