Plugins
Extend your site with plugins. ZephyrPHP has a hook-based plugin system for adding features without modifying core code.
Installing Plugins
Go to CMS Admin > Plugins to manage plugins. Install a plugin by:
- Clicking Install Plugin
- Uploading a ZIP file or entering a download URL (HTTPS only)
- The plugin is extracted and registered automatically
Managing Plugins
From the plugins page you can:
- Enable/Disable — Toggle plugins on and off without uninstalling
- Configure — Access plugin-specific settings (if the plugin provides them)
- Uninstall — Remove a plugin and its files
- Filter — View all, enabled, or disabled plugins
How Plugins Work
Plugins use an action/filter hook system:
- Actions — Execute code at specific points (e.g., after an entry is published)
- Filters — Modify data as it passes through (e.g., transform entry content before rendering)
Plugin Structure
A plugin is a folder in plugins/ with at minimum:
plugins/my-plugin/
├── manifest.json # Plugin metadata (name, version, author)
├── boot.php # Runs when plugin is loaded — register hooks here
└── uninstall.php # Optional cleanup when uninstalled
Security
Plugin installation includes multiple safety checks:
- Path traversal protection
- File count and size limits
- HTTPS-only for URL installs
- 50MB maximum download size
- Slug sanitization (only
a-z,0-9,_,-)
Build Your Own
Want to create a plugin? See the Creating Plugins guide.