Guida definitiva allo sviluppo di plugin per WordPress: costruisci il tuo primo plugin personalizzato da zero

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

Perché scegliere lo sviluppo di plugin per WordPress?

Il motivo per cui WordPress è diventato il sistema di gestione dei contenuti più popolare al mondo è senza dubbio la sua notevole estensibilità, che deriva principalmente dalla sua architettura basata su plugin. Sviluppando plugin personalizzati, è possibile aggiungere al sito qualsiasi funzionalità si desideri, senza dover modificare il codice sorgente di WordPress stesso. Questo significa che tali funzionalità possono esistere indipendentemente dai temi utilizzati e rimanere intatte anche in caso di cambio di tema. Ancora più importante: un plugin ben progettato può risolvere esigenze specifiche degli utenti, diventando addirittura un prodotto o servizio a sé stante.

Padroneggiare lo sviluppo di plugin significa passare da un semplice utente di WordPress a un creatore di contenuti digitali. Che si tratti di soddisfare le esigenze personali dei propri progetti o di generare entrate sviluppando plugin commerciali, comprendere i principi fondamentali e le migliori pratiche nello sviluppo di plugin è il primo passo essenziale. Questo guida ti accompagnerà partendo dalle strutture di base, per costruire gradualmente un plugin completo e conforme agli standard del framework WordPress.

Costruisci la struttura del tuo primo plugin.

Un plugin standard per WordPress è una cartella che contiene una o più file PHP; il directory radice di tale cartella deve contenere un file principale. Questo file principale deve includere informazioni specifiche relative al plugin, in modo che WordPress possa riconoscerlo e gestirlo correttamente.

Si consiglia di leggere Imparare a sviluppare plugin per WordPress: costruire moduli personalizzati ed efficienti da zero

Creare il file principale del plugin

La prima cosa che devi fare è creare il file principale del plugin. Questo file di solito prende il nome dello stesso plugin, ad esempio… my-first-plugin.phpAll'inizio di questo file, è necessario aggiungere una nota di testo standard che descriva la funzionalità del plugin.

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).
<?php
/**
 * Plugin Name:       我的第一个自定义插件
 * Plugin URI:        https://yourwebsite.com/my-first-plugin
 * Description:       这是一个用于学习的 WordPress 自定义插件示例。
 * Version:           1.0.0
 * Author:            你的名字
 * Author URI:        https://yourwebsite.com
 * License:           GPL v2 or later
 * Text Domain:       my-first-plugin
 * Domain Path:       /languages
 */

Questo commento rappresenta la “carta d’identità” del plugin. In esso… Plugin NameIl campo “Nome del plugin” è l’unico obbligatorio; gli altri campi servono per fornire ulteriori informazioni. La pagina “Plugin” presente nell’interfaccia di amministrazione di WordPress leggerà queste informazioni e le visualizzerà. Dopo aver creato il file, dovrai inserirlo nella directory di installazione di WordPress. /wp-content/plugins/ Il file si trova all’interno della cartella. Puoi creare direttamente una sottocartella chiamata “my-first-plugin” e inserire il file principale al suo interno. Ora, dopo esserti collegato al pannello di amministrazione di WordPress, potrai vederlo nell’elenco dei plugin e attivarlo. Anche se al momento non ha alcuna funzionalità, hai comunque compiuto il primo passo verso il successo.

Organizza i tuoi file di plugin.

Con l’aumento delle funzionalità, scrivere tutto il codice in un unico file principale diventa difficile da mantenere. Una corretta struttura organizzativa dei file è di fondamentale importanza. Un plugin tipico può contenere i seguenti directory:
* /includes/Contiene i file che definiscono le funzionalità principali del programma e le classi utilizzate.
* /admin/Contiene i file relativi all’interfaccia di gestione amministrativa del backend.
* /public/Contiene i file relativi alle funzionalità front-end destinate ai visitatori del sito web.
* /assets/Per conservare risorse statiche come JavaScript, CSS e immagini.
* /languages/Per conservare i file di traduzione internazionali (.po/.mo).

Questa struttura modulare non solo rende il codice più chiaro, ma facilita anche la collaborazione tra i membri del team e l’espansione delle funzionalità in futuro. Nel file principale… my-first-plugin.php In questo contesto, di solito si utilizza… require_once Per introdurre i file funzionali presenti in questi directory…

Comprendere i concetti fondamentali dello sviluppo di WordPress: gli “hook” e i “filter”.

Il cuore dello sviluppo di plugin per WordPress è il meccanismo dei “Hook” (Ganci). Questo meccanismo consente al tuo codice di essere inserito nel flusso di esecuzione principale di WordPress in momenti specifici, permettendoti così di modificare o aggiungere nuove funzionalità. I Hook si dividono in due tipi: le “Actions” (Azioni) e i “Filters” (Filtri).

Si consiglia di leggere Imparare a sviluppare plugin per WordPress da zero: guida alle funzionalità avanzate e alle migliori pratiche

Utilizzare gli “action hooks” per aggiungere funzionalità.

Gli “action hooks” permettono di eseguire funzioni personalizzate in momenti specifici durante il funzionamento di WordPress. Ad esempio, è possibile eseguire un’operazione al momento della pubblicazione di un articolo, oppure aggiungere un menu alla barra laterale dell’interfaccia di amministrazione.

Ecco un semplice esempio di utilizzo: wp_footer Questo “action hook” visualizza un messaggio nell’area comune in fondo alla pagina del sito web. Dovrai aggiungere il seguente codice al file principale del tuo plugin.

function myplugin_add_footer_text() {
    echo '<p style="text-align:center;">Grazie per aver utilizzato il mio primo plugin!</p>';
}
add_action( 'wp_footer', 'myplugin_add_footer_text' );

Questo, qui,myplugin_add_footer_text È una funzione che abbiamo definito noi.add_action() La funzione “lega” questa funzione ad un altro oggetto o contesto. wp_footer Questo “action hook” viene attivato quando WordPress arriva alla sezione del piede della pagina (footer). In quel momento, la nostra funzione viene chiamata automaticamente.

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%

Modificare il contenuto utilizzando gli hook dei filtri.

A differenza degli “action hooks”, i “filter hooks” vengono utilizzati per modificare i dati. La tua funzione riceverà un valore in input e, dopo averlo elaborato, dovrà restituire un nuovo valore. Ad esempio, potresti modificare il titolo di un articolo o cambiare il modo in cui il contenuto viene visualizzato.

L’esempio seguente mostra come utilizzare… the_content Un filtro che aggiunge automaticamente un testo personalizzato alla fine di tutti i contenuti degli articoli e delle pagine.

function myplugin_append_to_content( $content ) {
    $custom_text = '<div class="myplugin-note"><p><em>Questo articolo è visualizzato in modo migliorato grazie al mio plugin personalizzato.</em></p></div>';
    // 仅在主循环的单篇文章页面添加
    if ( is_single() &amp;&amp; in_the_loop() &amp;&amp; is_main_query() ) {
        return $content . $custom_text;
    }
    return $content;
}
add_filter( 'the_content', 'myplugin_append_to_content' );

funzione myplugin_append_to_content Ricevere il file originale… $contentUtilizziamo valutazioni condizionali per garantire che il testo venga aggiunto soltanto nei punti necessari, e successivamente restituiamo il contenuto modificato.add_filter() La funzione ha completato il processo di registrazione.

Si consiglia di leggere Sviluppo di plugin per WordPress: dall'introduzione alla perfezione: creazione di funzionalità personalizzate e di estensioni efficienti

Creare una pagina di gestione per il plugin.

La maggior parte degli plugin richiede una pagina di configurazione che permetta agli utenti di impostare le opzioni desiderate. WordPress offre un’ampia gamma di API per creare interfacce di gestione estetiche e standardizzate.

Aggiungere il menu di gestione di livello superiore

Puoi aggiungere un nuovo elemento di menu di livello superiore nella barra di navigazione laterale del backend di WordPress per il tuo plugin. Questo si può fare seguendo questi passaggi: add_menu_page() È implementato tramite funzioni. Di solito lo facciamo… admin_menu Questo funzionario viene chiamato all’interno di questo hook di azione.

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.
function myplugin_add_admin_menu() {
    add_menu_page(
        '我的插件设置', // 页面标签
        '我的插件',     // 菜单标题
        'manage_options', // 所需权限
        'myplugin-settings', // 菜单 Slug
        'myplugin_settings_page_html', // 显示页面内容的回调函数
        'dashicons-admin-generic', // 图标(可选)
        80 // 菜单位置(可选)
    );
}
add_action( 'admin_menu', 'myplugin_add_admin_menu' );

Creare il contenuto della pagina di configurazione

Ora dobbiamo definire la funzione di callback menzionata sopra. myplugin_settings_page_htmlQuesto codice viene utilizzato per renderizzare il contenuto HTML della pagina di configurazione. Una versione semplice è la seguente:

function myplugin_settings_page_html() {
    // 检查用户权限
    if ( ! current_user_can( 'manage_options' ) ) {
        return;
    }
    ?&gt;
    <div class="wrap">
        <h1><?php echo esc_html( get_admin_page_title() ); ?></h1>
        <form action="/it/options.php/" method="post" data-trp-original-action="options.php">
            <?php
            // 输出设置字段和非ce字段
            settings_fields( 'myplugin_options' );
            do_settings_sections( 'myplugin-settings' );
            submit_button( '保存设置' );
            ?>
        <input type="hidden" name="trp-form-language" value="it"/></form>
    </div>
    &lt;?php
}

Questa funzione crea un modulo che segue lo stile grafico del backend di WordPress. Per gestire completamente le impostazioni, è necessario utilizzare anche altri strumenti o funzionalità aggiuntive. register_setting(), add_settings_section()add_settings_field() Si utilizzano funzioni come queste per definire i singoli elementi di configurazione; questo costituisce il flusso di lavoro completo dell“”Settings API”, rappresentando il metodo consigliato per archiviare e recuperare in modo sicuro le opzioni dei plugin.

Implementare una funzionalità di plugin pratica: il conteggio del numero di visualizzazioni di un articolo.

Uniamo questi concetti per creare una funzione pratica: quella di contare e visualizzare il numero di visualizzazioni di ogni articolo.

Creare campi di un database e memorizzare dati.

Innanzitutto, dobbiamo creare un sistema per memorizzare il numero di visualizzazioni degli articoli al momento della loro pubblicazione. Di solito, utilizziamo la funzionalità dei “meta-dati degli articoli” (post meta) offerta da WordPress. Possiamo fare questo… add_post_meta Esiste una funzione per farlo, ma un modo più elegante è controllare e aggiornare questo valore quando l’articolo viene visualizzato.

function myplugin_track_post_views( $post_id ) {
    if ( ! is_single() ) {
        return;
    }
    if ( empty( $post_id ) ) {
        global $post;
        $post_id = $post->ID;
    }
    // 获取当前浏览次数
    $count = get_post_meta( $post_id, 'myplugin_post_views', true );
    // 如果为空,初始化为0
    $count = $count ? absint( $count ) : 0;
    $count++;
    // 更新数据库
    update_post_meta( $post_id, 'myplugin_post_views', $count );
}
// 在模板重定向时触发,确保只对真实访客计数
add_action( 'template_redirect', 'myplugin_track_post_views' );

Visualizzare il numero di visualizzazioni sul lato frontale del sito.

Dopo aver memorizzato i dati, abbiamo bisogno di una funzione per recuperarli e visualizzarli. Possiamo creare un “Shortcode” (un codice breve) che permetta agli utenti di inserirlo facilmente all’interno del contenuto degli articoli o nelle barre laterali.

function myplugin_display_post_views_shortcode( $atts ) {
    $atts = shortcode_atts( array(
        'id' =&gt; get_the_ID(),
    ), $atts, 'myplugin_views' );

$post_id = absint( $atts['id'] );
    $views = get_post_meta( $post_id, 'myplugin_post_views', true );
    $views = $views ? $views : 0;

return '<span class="myplugin-view-count">Numero di visualizzazioni: ' . esc_html( $views ) . '</span>'php
add_shortcode('myplugin_views', 'myplugin_display_post_views_shortcode');

Ora, gli utenti devono semplicemente inserire un codice breve nell’editor di articoli. [myplugin_views]Oppure, è possibile aggiungere un’applet chiamata “codice breve” tramite degli strumenti speciali e inserire tale codice per visualizzare il numero di visualizzazioni dell’articolo sulla pagina. Questo esempio completo illustra l’intero processo, che include lo stoccaggio dei dati (utilizzando dei “hook”), la loro recupero e la loro visualizzazione sul lato frontend (tramite il codice breve).

Riassumendo

Seguendo questa guida, hai completato l’intero processo di creazione di un plugin personalizzato per WordPress partendo da zero. Abbiamo iniziato analizzando la struttura di base di un plugin e creato il file principale che contiene le informazioni di intestazione standard. Successivamente, abbiamo approfondito i concetti fondamentali dello sviluppo di plugin per WordPress, come gli “hook” (azioni e filtri), imparando come utilizzarli per aggiungere o modificare funzionalità. Abbiamo inoltre creato pagine di gestione per il plugin, fondamentali per interagire con gli utenti. Infine, abbiamo applicato le nozioni teoriche a un caso pratico (la statistica del numero di visualizzazioni degli articoli), realizzando un ciclo funzionale completo che va dalla registrazione dei dati alla loro visualizzazione sul front end.

Ricorda: lo sviluppo di plugin di qualità non consiste semplicemente nel far funzionare le funzionalità, ma anche nel prestare attenzione alla sicurezza del codice, alla sua manutenibilità, alle prestazioni e al rispetto degli standard di codifica di WordPress. Continuando a praticare e esplorando i vari API di WordPress, sarai in grado di creare plugin potenti e apprezzati dagli utenti.

FAQ - Domande frequenti

Quali sono le conoscenze preliminari necessarie per sviluppare plugin?

È necessario disporre di una solida conoscenza della programmazione in PHP, poiché WordPress e i suoi plugin sono sviluppati principalmente in questo linguaggio. Inoltre, è fondamentale avere una conoscenza di base di HTML, CSS e JavaScript per creare interfacce utente e funzionalità interattive. Conoscere alcuni concetti di base del database MySQL sarà utile per comprendere il modo in cui WordPress gestisce l’archiviazione dei dati.

Come devo debuggare il mio plugin per WordPress?

Prima di tutto, assicurati che nel tuo… wp-config.php Attiva il modalità di debug di WordPress nel file. WP_DEBUG La costante è impostata su trueQuesto farà apparire gli errori e gli avvisi di PHP sullo schermo. In secondo luogo, utilizza… error_log() La funzione scrive le informazioni di debug nel log di errore del server, il che rappresenta un metodo di debug molto affidabile. Per variabili complesse, è possibile utilizzarlo in combinazione con altri strumenti o tecniche. print_r()var_dump()error_log()Inoltre, utilizza gli strumenti di sviluppo del browser (F12) per debuggare problemi relativi al JavaScript e al CSS del lato client.

Come posso garantire che il mio plugin sia compatibile con diverse versioni di WordPress?

Durante lo sviluppo, è consigliabile consultare regolarmente la guida ufficiale di sviluppo di WordPress per rimanere aggiornati sui cambiamenti apportati alle funzioni e agli “hook” (meccanismi di interazione tra componenti del sistema) nelle diverse versioni del software. function_exists()version_compare() Utilizzare istruzioni condizionali per verificare se una funzione o una caratteristica è disponibile, al fine di fornire soluzioni di backup compatibili con le versioni precedenti di WordPress. Indicare chiaramente nell’ descrizione del plugin l’intervallo di versioni di WordPress per cui il plugin è compatibile. Eseguire test continui in ambienti di test su diverse versioni di WordPress rappresenta la migliore pratica per garantire la compatibilità.

Quali aspetti bisogna considerare quando si sviluppano plugin commerciali?

Quando si sviluppano plugin commerciali, la sicurezza, la qualità del codice e l’esperienza utente devono essere al primo posto. È necessario implementare un sistema di autenticazione affidabile e sicuro (ad esempio, utilizzando chiavi di licenza). È fondamentale fornire documentazione utente chiara e tempestiva, nonché un supporto tecnico efficace. Assicurarsi di seguire le linee guida ufficiali di WordPress per lo sviluppo di plugin e il protocollo di licenza GPL. Prendete in considerazione l’utilizzo di piattaforme professionali come Freemius o Easy Digital Downloads per gestire le vendite, le notifiche di aggiornamento e le richieste di supporto.