Plugin base: differenze tra le versioni
Aspetto
| Riga 38: | Riga 38: | ||
=== my-plugin.php – File di bootstrap === | === my-plugin.php – File di bootstrap === | ||
Avvia il plugin caricando la classe Plugin. | |||
<pre> | <pre> | ||
| Riga 48: | Riga 50: | ||
run_my_plugin(); | run_my_plugin(); | ||
</pre> | |||
=== Plugin.php – Punto di ingresso OOP === | |||
Crea una nuova istanza del Loader, che inizializza tutte le funzionalità. | |||
<pre> | |||
class Plugin { | |||
public function run() { | |||
$loader = new Loader(); | |||
$loader->init(); | |||
} | |||
} | |||
</pre> | </pre> | ||
Versione delle 14:56, 13 ago 2025
Info
Struttura modulare, basata su classi, con il supporto integrato per REST API e AJAX.
my-plugin/
│
├── my-plugin.php # File principale del plugin
├── uninstall.php # Disinstallazione pulita
│
├── includes/
│ ├── Core/
│ │ ├── Plugin.php # Classe principale che avvia il plugin
│ │ └── Loader.php # Classe che carica tutte le componenti
│ │
│ ├── Admin/
│ │ └── SettingsPage.php # Pannello admin nel backend
│ │
│ ├── Frontend/
│ │ └── ShortcodeHandler.php # Gestione shortcode e risorse frontend
│ │
│ ├── Api/
│ │ └── RestRoutes.php # Definizione di una rotta REST API
│ │
│ └── Ajax/
│ └── AjaxHandler.php # Gestione delle chiamate AJAX
│
├── assets/
│ ├── css/
│ ├── js/
│ └── images/
│
└── templates/
└── admin-settings.php # HTML della pagina di impostazioni admin
LOGICA DEL PLUGIN
my-plugin.php – File di bootstrap
Avvia il plugin caricando la classe Plugin.
require_once plugin_dir_path(__FILE__) . 'includes/Core/Plugin.php';
function run_my_plugin() {
$plugin = new MyPlugin\Core\Plugin();
$plugin->run();
}
run_my_plugin();
Plugin.php – Punto di ingresso OOP
Crea una nuova istanza del Loader, che inizializza tutte le funzionalità.
class Plugin {
public function run() {
$loader = new Loader();
$loader->init();
}
}