Intermediate
-
Automated tests for plugins
Set up the WordPress test suite for a plugin, write integration tests, and run them in CI.
-
Coding standards with PHPCS and WPCS
Check code against WordPress Coding Standards with PHPCS, fix issues automatically and add it to CI.
-
Data migrations and plugin updates
Run upgrade routines between plugin versions, migrate data in batches, and stay backwards compatible.
-
Multisite-compatible plugins
Network activation, per-site tables and options, and testing plugins on Multisite.
-
Privacy tools: personal data export and erasure
Hook into WordPress privacy tools so users can export and erase data your plugin stores.
-
Licensing and updates for premium plugins
Deliver updates outside WordPress.org, licence checks and GPL obligations.
-
Publishing on the WordPress.org plugin directory
Prepare the readme, pass review guidelines, use SVN releases and support users.
-
Plugin performance at scale
Keep plugins fast on large sites: query discipline, caching, lazy loading and avoiding autoload bloat.
-
Integrating plugins with the block editor
Ship blocks, block bindings and editor panels from a plugin, and register meta for the editor.
-
Plugin dependencies with Requires Plugins
Declare plugin dependencies in the header, check for them at runtime and degrade gracefully.
-
Object-oriented plugin architecture
Structure larger plugins with namespaces, classes, hook registration and clear responsibilities.
-
Composer and autoloading in plugins
Use Composer autoloading and dependencies in plugins, and prefix vendor code to avoid conflicts.
-
The database API: $wpdb and prepared queries
Run custom queries with $wpdb->prepare, table prefixes, and when to avoid raw SQL.
-
Plugin structure and best practices
Organise files, prefix everything, guard direct access and keep the main file small.
-
Options and transients
Store settings with the Options API, cache expensive results with transients, and watch autoloaded data.
-
Activation, deactivation and uninstall
Run setup on activation, clean up on deactivation, and remove data on uninstall when users ask for it.
-
WP-CLI for developers
Manage sites, content, plugins and the database from the command line, and write custom commands.
-
Admin menus and pages
Add admin menus and submenus with the right capabilities, and render admin pages.
-
Internationalisation: translating themes and plugins
Make code translatable with __ and friends, text domains, JavaScript translations and translation files.
-
The Settings API
Register settings, sections and fields with sanitisation, so options save securely.