Guida introduttiva allo sviluppo di plugin per WordPress: crea il tuo primo modulo funzionale da zero.

Leggere in 2 minuti.
2026-03-19
2026-06-03
2,758
Guadagno delle commissioni quando fai acquisti tramite i link qui sotto, senza alcun costo aggiuntivo per te.

Perché è necessario sviluppare plugin personalizzati per WordPress?

Quando le funzionalità integrate di WordPress e i plugin esistenti non sono in grado di soddisfare appieno le esigenze specifiche di un business, lo sviluppo di plugin personalizzati rappresenta la soluzione più diretta. I plugin personalizzati ti permettono di aggiungere qualsiasi funzionalità desideri al sistema di base, senza dover modificare i file principali di WordPress. Questo non solo garantisce che le tue funzionalità non vengano perse in caso di aggiornamenti di WordPress, ma rende anche il sistema più modulare, facilitando il trasferimento e la gestione tra diversi siti. Rispetto alla modifica dei temi, questo approccio offre molti vantaggi.functions.phpI file e i plugin rappresentano una scelta migliore per il riutilizzo delle funzionalità: permettono di separare il codice dal tema utilizzato, aumentando così la flessibilità e la manutenibilità del progetto.

Preparazione dell’ambiente e delle conoscenze prima dello sviluppo

Prima di iniziare a scrivere il codice, è necessario creare un ambiente di sviluppo appropriato e acquisire la conoscenza di base necessaria.

Configurazione dell’ambiente di sviluppo locale

Un ambiente di sviluppo locale stabile e isolato è di fondamentale importanza. Si consiglia l’uso di strumenti come Local by Flywheel, XAMPP o MAMP per creare rapidamente un ambiente integrato che includa PHP, MySQL e Apache/Nginx. Assicurati che la versione di PHP sia superiore a 7.4, quella di MySQL superiore a 5.6, e installa la versione più recente di WordPress.wp-config.phpIn questo documento, si suggerisce di…WP_DEBUGLa costante è impostata sutruePer visualizzare i messaggi di errore durante il processo di sviluppo.

Si consiglia di leggere Guida completa allo sviluppo di plugin per WordPress: dalla creazione del tuo primo plugin funzionale fino al suo completamento.

Conoscenze essenziali di PHP e dell’API di WordPress.

Per sviluppare plugin è necessario possedere una conoscenza di base di PHP, inclusa l’utilizzo di variabili, funzioni, classi e spazi di nomi, nonché le tecniche per operare in modo sicuro sui database. È particolarmente importante essere familiari con l’ampia gamma di API fornite da WordPress, come gli “action hooks” e gli “filter hooks”. Gli action hooks permettono di eseguire codice personalizzato in momenti specifici, mentre gli filter hooks consentono di modificare i dati. L’implementazione delle funzionalità di un plugin dipende in gran parte dall’uso abile di questi strumenti.

UltaHost – Hosting per siti WordPress
Garanzia di rimborso entro 30 giorni, larghezza di banda illimitata e accesso ai database, protezione gratuita contro gli attacchi DDoS; sconto del 50% per l’acquisto di un piano valido per 3 anni (da 3 a 4 TB di spazio di archiviazione).

Creare la struttura di base del primo plugin

Successivamente, comprendremo la struttura di base di un plugin creando un semplice plugin “Hello World”.

Il framework di base del file del plugin principale

Ogni plugin deve disporre di un file principale che contiene le informazioni di metadati del plugin stesso. Per favore, crea questo file nella directory di installazione di WordPress.wp-content/pluginsAll’interno della cartella, creare una nuova cartella, ad esempio chiamandola “nuova_cartella”.my-first-pluginAll’interno di quella cartella, creare il file PHP principale; può essere chiamato…my-first-plugin.phpAll’inizio di questo file, è necessario aggiungere una nota di testo che contenga le informazioni standard relative al plugin.

<?php
/**
 * Plugin Name:       我的第一个插件
 * Plugin URI:        https://yourwebsite.com/my-first-plugin
 * Description:       这是一个学习用的示例插件,用于在管理后台显示欢迎信息。
 * Version:           1.0.0
 * Author:            你的名字
 * License:           GPL v2 or later
 * Text Domain:       my-first-plugin
 */

Questo blocco di commenti è indispensabile: WordPress utilizza queste informazioni per riconoscere e visualizzare il tuo plugin nell’elenco dei plugin disponibili nell’area di amministrazione del sito.

Creare una pagina del menu di amministrazione backend.

Per rendere le funzionalità visibili nell’interfaccia di amministrazione di WordPress, dobbiamo creare una pagina del menu di gestione. Continua ad aggiungere codice nel file principale del plugin. Utilizzeremo…add_action()La funzione viene montata suadmin_menuQuesto elemento è collegato a un “gancio di azione” (action hook).

Si consiglia di leggere Dall'inizio all'eccellenza: guida completa allo sviluppo di plugin per WordPress e migliori pratiche.

// 添加管理菜单
function mfp_add_admin_menu() {
    add_menu_page(
        '我的插件设置', // 页面标题
        '我的插件',     // 菜单标题
        'manage_options', // 权限(管理员)
        'my-first-plugin', // 菜单slug
        'mfp_admin_page_content', // 渲染页面内容的函数
        'dashicons-smiley', // 图标(使用Dashicon)
        6 // 菜单位置
    );
}
add_action('admin_menu', 'mfp_add_admin_menu');

// 定义管理页面的内容
function mfp_admin_page_content() {
    ?&gt;
    <div class="wrap">
        <h1>Benvenuti nel mio primo plugin!</h1>
        <p>Ecco un semplice esempio di plugin per WordPress.</p>
    </div>
    &lt;?php
}

Questo codice aggiungerà un menu principale denominato “I miei plugin” nella barra di navigazione a sinistra del backend di WordPress; facendo clic su di esso, verrà visualizzata una pagina di benvenuto. Si consiglia di aggiungere un proprio prefisso ai nomi delle funzioni per migliorarne la leggibilità.mfp_Per evitare conflitti con i nomi delle funzioni di altri plugin o temi.

Scrivere la prima funzionalità semplice

Ora, aggiungiamo una funzionalità semplice dal lato del sito web. Ad esempio, possiamo aggiungere automaticamente un testo personalizzato alla fine di ogni articolo. Per farlo, utilizzeremo…the_contentFilter hook.

// 在文章内容后添加自定义文本
function mfp_append_text_to_content($content) {
    if (is_single()) { // 仅在单篇文章页面生效
        $custom_text = '<p><em>Questo articolo è stato arricchito dal mio primo plugin.</em></p>';
        $content .= $custom_text;
    }
    return $content;
}
add_filter('the_content', 'mfp_append_text_to_content');

Questa funzionalità mostra l’uso di base di un filtro: riceve il contenuto originale e lo restituisce dopo averlo modificato. Si tratta di un modello molto potente e comunemente utilizzato.

hosting.com Hosting condiviso
Prestazioni elevate con CPU AMD EPYC, storage SSD NVMe e LiteSpeed, supporto interno di esperti 24 ore su 24, 7 giorni su 7, misure di sicurezza avanzate, tra cui SSL, brute force, malware e protezione DDoS, risparmi fino a 73%

Pratiche avanzate e standard per lo sviluppo di plugin

Dopo aver implementato le funzionalità di base, seguire le migliori pratiche renderà il tuo plugin più robusto e sicuro.

Procedimenti da seguire durante l’attivazione e la disinstallazione degli plugin.

Quando un utente attiva o elimina un plugin, potrebbe essere necessario creare tabelle di dati, impostare opzioni predefinite o eliminare i dati generati dal plugin stesso. WordPress offre degli “hook” (meccanismi di interazione) appositi per gestire queste situazioni.

Gli script per l’attivazione dell’account, la registrazione e il disinstallazione del plugin devono essere inseriti nel file principale del plugin stesso.register_activation_hookregister_uninstall_hookImplementazione della funzione. Si noti che il meccanismo per l’disinstallazione dei “hook” (i componenti che interagiscono con il sistema) dovrebbe essere rappresentato da un metodo statico o da una funzione indipendente.

Si consiglia di leggere Guida completa allo sviluppo di plugin per WordPress: crea il tuo plugin personalizzato da zero.

// 插件激活时执行的操作
function mfp_plugin_activation() {
    // 例如:在选项表中添加一个默认设置
    add_option('mfp_default_greeting', '你好,欢迎光临!');
}
register_activation_hook(__FILE__, 'mfp_plugin_activation');

// 插件卸载时执行的操作
function mfp_plugin_uninstall() {
    // 删除插件创建的选项
    delete_option('mfp_default_greeting');
    // 注意:谨慎操作,此处可删除自定义数据库表
}
register_uninstall_hook(__FILE__, 'mfp_plugin_uninstall');

Considerazioni sulla sicurezza, la localizzazione e le prestazioni

La sicurezza rappresenta un aspetto di fondamentale importanza nello sviluppo di plugin. Tutti i dati forniti dagli utenti (ad esempio, i dati inseriti nei moduli o i parametri presenti nelle URL) devono essere verificati e trattati in modo da eliminare eventuali potenziali minacce per il sistema. WordPress mette a disposizione un’ampia gamma di funzioni per garantire questa sicurezza.sanitize_text_field(), esc_html(), wp_kses(), prepare()(Per le query al database) Questo ti aiuterà a proteggere il sistema. Non fidarti mai direttamente degli input forniti dagli utenti, e non visualizzarli mai direttamente sulla pagina o nel database.

Se il tuo plugin è rivolto a utenti internazionali, è necessario supportare la localizzazione (i18n – Internationalization).__()_e()Funzioni come `wrap` vengono utilizzate per incapsulare tutte le stringhe di testo da tradurre.

Hosting condiviso InterServer
Hosting condiviso $2,50 USD al mese, primo mese $0,1 USD codice promozionale tryinterserver, 461 script di applicazioni cloud, installazione con un clic.

Per quanto riguarda le prestazioni, è necessario evitare query al database non necessarie o operazioni che richiedono un’elevata utilizzo delle risorse. Utilizzare correttamente la cache (ad esempio, l’API “Transient API”) e organizzare in modo appropriato i file di script e i file di stile.wp_enqueue_script()wp_enqueue_style()Vengono inseriti correttamente nella coda e caricati soltanto quando necessario, sulle pagine per cui sono stati richiesti.

Pacchettare e distribuire plugin

Una volta completato lo sviluppo, è possibile comprimere la cartella contenente il plugin in un file ZIP. Gli utenti possono installarlo direttamente dalla pagina “Plugin -> Installa plugin -> Carica plugin” presente nell’interfaccia di amministrazione di WordPress.

Se desideri inviare il tuo plugin al catalogo ufficiale di WordPress, devi seguire rigorosamente le linee guida per la submission, compresi gli standard di codifica (si consiglia l’utilizzo degli standard di codifica di WordPress), commenti documentali completi, dichiarazioni di compatibilità, e assicurarti che il plugin non contenga codice che violi i termini della licenza GPL. Oggi, nel 2026, i criteri di valutazione del catalogo vengono aggiornati in base allo sviluppo della piattaforma; pertanto, prima di inviare il tuo plugin, leggi attentamente le ultime richieste.

Riassumendo

Lo sviluppo di plugin per WordPress rappresenta un processo che consente di trasformare idee personali in funzionalità efficaci e utili. Abbiamo iniziato comprendendo le motivazioni alla base dello sviluppo, abbiamo creato un ambiente locale e abbiamo gradualmente messo in pratica le procedure necessarie per creare la struttura dei file del plugin, aggiungere menu nel pannello di amministrazione, implementare funzionalità di base e gestire eventi legati all’attivazione e alla disinstallazione del plugin. Ancora più importante è stato discutere di aspetti fondamentali dello sviluppo, come la sicurezza, la localizzazione e le prestazioni, che costituiscono le basi per garantire la qualità e l’affidabilità dei plugin. La chiave per compiere il primo passo nello sviluppo consiste nell’agire concretamente: partendo dall’esempio “Hello World” presentato in questo articolo e esplorando continuamente l’ampia API di WordPress nonché il suo sistema di hook, sarà possibile creare plugin sempre più complessi e funzionali, estendendo così in modo significativo le possibilità offerte da WordPress.

FAQ - Domande frequenti

Per sviluppare plugin per WordPress è necessario conoscere a fondo PHP?

Sì, per sviluppare plugin per WordPress è necessaria una solida conoscenza di PHP. WordPress stesso è costruito in PHP, e anche la logica fondamentale dei plugin viene scritta in PHP. È necessario comprendere le funzioni, le classi, gli spazi di nomi di PHP, nonché i concetti di base della programmazione orientata agli oggetti. Inoltre, conoscere HTML, CSS e JavaScript di base è molto utile per creare funzionalità front-end interattive.

Qual è la differenza essenziale tra le funzionalità dei file functions.php dei plugin e dei temi?

La principale differenza tra i due risiede nell’uso del codice e nella sua portabilità. Per quanto riguarda i temi…functions.phpIl codice utilizzato per aggiungere elementi che siano strettamente correlati all’aspetto e alle funzionalità del tema attivo diventa inutilizzabile quando si cambia tema. I plugin, invece, rappresentano moduli funzionali il cui codice è indipendente dal tema stesso; il loro scopo è fornire un insieme di funzionalità specifiche che possono essere utilizzate in qualsiasi tema. Pertanto, le funzionalità di carattere generale (come i moduli di contatto o l’ottimizzazione per i motori di ricerca, SEO) dovrebbero essere sviluppate come plugin, mentre quelle che sono strettamente legate alla struttura e allo stile del tema sono più adatte ad essere integrate direttamente all’interno di quest’ultimo.functions.phpSì.

Come gestire i problemi di compatibilità tra diverse versioni di WordPress?

La chiave per risolvere i problemi di compatibilità consiste nell’utilizzare con attenzione le API e nel effettuare controlli condizionali. Durante lo sviluppo, è consigliabile consultare il manuale ufficiale di WordPress per comprendere in quale versione sono state introdotte le funzioni, le classi o gli hook che si stanno utilizzando. Nel caso in cui sia necessario supportare versioni più vecchie, è possibile ricorrere a soluzioni appropriate.function_exists()class_exists()Verifica se una determinata funzionalità è disponibile; in caso contrario, fornisci una soluzione di fallback appropriata o visualizza un messaggio di errore cordiale. Inoltre, specifica chiaramente nell’annotazione in cima al plugin l’intervallo di versioni di WordPress per cui i test sono stati eseguiti con successo.

Come creare una console di controllo personalizzabile per un plugin?

Il metodo standard per creare una console di controllo per un plugin è utilizzare l’API Settings di WordPress. Il processo prevede l’utilizzo di…register_setting()Registra un gruppo di impostazioni e dei campi da utilizzare.add_settings_section()add_settings_field()Definiamo la sezione relativa alle aree di configurazione e i campi specifici, per poi utilizzarli nella funzione di callback della pagina del menu.settings_fields()do_settings_sections()Per renderizzare il modulo, l’API Settings gestirà automaticamente la verifica del “nonce” durante la submission del modulo, i controlli sui diritti di accesso e la salvazione delle impostazioni. Questa rappresenta la migliore pratica per lo sviluppo di pagine di configurazione.

Qual è il modo corretto per connettersi a un database nello sviluppo di plugin?

Assolutamente non utilizzare direttamente le funzioni MySQL fornite da PHP. WordPress offre delle soluzioni più appropriate per interagire con il database MySQL.wpdbUtilizzando classi globali è possibile interagire in modo sicuro con il database; per farlo, è possibile ricorrere a variabili globali.$wpdbPer accedervi, utilizzate i metodi appropriati. Per quanto riguarda le query, in particolare quelle che richiedono l’input da parte dell’utente, assicuratevi di seguire le procedure corrette.$wpdb->prepare()Esistono diversi metodi per prevenire gli attacchi di iniezione SQL. Per creare tabelle di dati personalizzate, è consigliabile eseguire l’istruzione SQL relativa alla creazione della tabella all’interno degli hook di attivazione del plugin, utilizzando tecniche di sicurezza appropriate.$wpdb->get_charset_collate()Assicurarsi che l’insieme di caratteri sia in linea con le impostazioni di WordPress.