Creare un plugin
Un plugin è un pacchetto separato dal core, capace di registrare funzionalità tramite le API pubbliche di Ciarvi.
Struttura iniziale
mio-plugin/
├── plugin.json
└── provider.php
Manifest di esempio
{
"name": "Mio Plugin",
"slug": "mio-plugin",
"version": "1.0.0",
"apiVersion": 1,
"author": "Mio Nome",
"requires": {
"cms": ">=0.24.0 <2.0.0",
"php": ">=8.2"
}
}
La versione di compatibilità è un esempio: per un plugin reale usa i requisiti effettivi della tua estensione.
API pubbliche PHP
Nel codice dell'estensione usa le interfacce pubbliche per il runtime e il contesto del plugin:
use PiumaCms\PluginApi\V1\PluginRuntime;
use PiumaCms\PluginApi\V1\PluginContext;
Evita dipendenze su classi interne del core. I dati persistenti dell'estensione devono usare gli strumenti e le directory runtime previsti dal CMS, non il codice installabile del plugin.
Test prima della distribuzione
Verifica installazione, attivazione, disattivazione e ruoli; controlla Sistema → Health. Se lavori nel repository del core puoi utilizzare i controlli dedicati all'API plugin.