34 lines
854 B
Markdown
34 lines
854 B
Markdown
# Activation, deactivation, uninstall
|
|
|
|
Use this file for lifecycle changes and data cleanup.
|
|
|
|
## Activation / deactivation hooks
|
|
|
|
- `register_activation_hook( __FILE__, 'callback' )`
|
|
- `register_deactivation_hook( __FILE__, 'callback' )`
|
|
|
|
Guardrails:
|
|
|
|
- These hooks must be registered at top-level (not inside other hooks).
|
|
- If you flush rewrite rules, ensure rules are registered first (often via a shared function called both on `init` and activation).
|
|
|
|
Upstream reference:
|
|
|
|
- https://developer.wordpress.org/plugins/plugin-basics/activation-deactivation-hooks/
|
|
|
|
## Uninstall
|
|
|
|
Preferred approaches:
|
|
|
|
- `uninstall.php` (runs only on uninstall)
|
|
- `register_uninstall_hook()`
|
|
|
|
Guardrails:
|
|
|
|
- Check `WP_UNINSTALL_PLUGIN` before running destructive cleanup.
|
|
|
|
Upstream reference:
|
|
|
|
- https://developer.wordpress.org/plugins/plugin-basics/uninstall-methods/
|
|
|