Sviluppo di plugin per WordPress: Da principianti a esperti: Una guida completa per creare funzionalità personalizzate

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

Configurazione dell'ambiente di sviluppo dei plugin di WordPress.

Prima di iniziare a scrivere il codice, è essenziale disporre di un ambiente di sviluppo stabile ed efficiente. Questo non solo migliora l’efficienza dello sviluppo, ma garantisce anche la compatibilità dei plugin in diversi ambienti. Per prima cosa, è necessario configurare un ambiente di esecuzione per WordPress sul proprio computer locale. Si consiglia l’uso di pacchetti software per server locali integrati, come XAMPP, MAMP o Local by Flywheel, che permettono di installare in un solo passo Apache, MySQL e PHP.

Successivamente, avrai bisogno di un editor di codice. Visual Studio Code, PhpStorm o Sublime Text sono ottime scelte: offrono evidenziazione del codice, suggerimenti automatici e funzionalità di debug. Assicurati che la versione di PHP che utilizzi sia compatibile con l’ambiente WordPress a cui ti stai rivolgendo; di solito, il sito ufficiale di WordPress consiglia una versione stabile di PHP.

La preparazione fondamentale per lo sviluppo consiste nella creazione della struttura di base di un plugin. Nella directory di installazione di WordPress…wp-content/pluginsAll’interno della cartella, crea una nuova cartella dedicata al tuo plugin, ad esempio:my-first-pluginIn questa cartella, devi creare un file principale per il plugin, che di solito prende il nome dello stesso plugin, ad esempio:my-first-plugin.phpQuesto file rappresenta il punto di ingresso per il tuo plugin, e le informazioni presenti nelle note in cima ad esso sono di fondamentale importanza: WordPress si basa su di esse per riconoscere e visualizzare il tuo plugin.

Si consiglia di leggere Guida completa allo sviluppo di plugin per WordPress: costruisci il tuo primo plugin da zero

<?php
/**
 * Plugin Name: 我的第一个插件
 * Plugin URI:  https://example.com/my-first-plugin
 * Description: 这是一个用于演示的WordPress插件。
 * Version:     1.0.0
 * Author:      你的名字
 * License:     GPL v2 or later
 * Text Domain: my-first-plugin
 */

Questo commento definisce le informazioni visualizzate dal plugin nell’interfaccia di amministrazione di WordPress. Una volta completato questo passaggio, potrai vedere e attivare il tuo plugin nella pagina “Plugin” dell’interfaccia di amministrazione di WordPress, anche se al momento non dispone di alcuna funzionalità.

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).

Comprendere i meccanismi fondamentali dei plugin per WordPress

Il punto di forza di WordPress risiede nella sua architettura altamente estensibile, che viene realizzata principalmente grazie al meccanismo dei “Hook”. Comprendere il funzionamento dei Hook è fondamentale per padroneggiare lo sviluppo di plugin. Esistono due tipi principali di Hook: gli Action Hooks e i Filter Hooks.

Gli “action hooks” ti permettono di inserire e eseguire il tuo codice in momenti specifici. Ad esempio, quando un articolo viene pubblicato o quando un utente visita la parte iniziale del sito web, WordPress attiva gli action hooks corrispondenti. Puoi sfruttarli per eseguire azioni personalizzate.add_action()La funzione “monta” la tua funzione personalizzata su questi punti di interazione (hook).

function my_custom_function() {
    // 你的代码逻辑
}
add_action( 'wp_head', 'my_custom_function' );

Il codice sopra menzionato verrà utilizzato sul sito web.<head>Esecuzione parzialemy_custom_functionFunzione.

I “filter hooks” servono per modificare i dati. Ti permettono di alterarli prima che vengano utilizzati (ad esempio, salvati in un database o visualizzati su una pagina). Puoi utilizzarli per apportare modifiche necessarie ai dati durante il loro processo di elaborazione.add_filter()La funzione viene utilizzata per applicare un filtro. La funzione del filtro deve ricevere un valore in input e restituire il valore modificato.

Si consiglia di leggere Introduzione pratica per principianti assoluti: ti insegnerò passo dopo passo come sviluppare un plug-in WordPress.

function modify_content( $content ) {
    $new_content = $content . “<p>Questo articolo è stato aggiunto dal mio plugin.</p>”;
    return $new_content;
}
add_filter( 'the_content', 'modify_content' );

Questo codice aggiunge un testo personalizzato alla fine del contenuto di ogni articolo.

Un altro meccanismo fondamentale è rappresentato dai “Shortcode” (codici brevi). I Shortcode consentono agli utenti di utilizzare semplici tag per…[my_shortcode])在文章或页面中插入动态内容。你可以使用add_shortcode()Esiste una funzione per registrare una funzione di elaborazione di un codice breve (short code).

Creare un esempio di plugin completo e funzionale.

Ora, utilizzando le conoscenze apprese in precedenza, creeremo un semplice plugin per “stima del tempo di lettura di un articolo”. Questo plugin calcolerà automaticamente il tempo necessario per leggere l’articolo e lo visualizzerà prima del contenuto stesso.

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%

Innanzitutto, nel file principale del plugin, creiamo una funzione per calcolare il tempo di lettura. Supponiamo che la velocità di lettura media sia di 200 parole al minuto.

function calculate_reading_time( $content ) {
    // 去除HTML标签,只计算纯文字
    $text = strip_tags( $content );
    // 计算单词数
    $word_count = str_word_count( $text );
    // 计算阅读分钟数(向上取整)
    $reading_time = ceil( $word_count / 200 );

// 创建显示信息
    $reading_time_html = ‘<div class="“reading-time”">Tempo di lettura previsto: ’. $reading_time . ‘ minuti</div>’;

// 将阅读时间信息附加到文章内容之前
    return $reading_time_html . $content;
}
// 使用过滤器将函数应用到文章内容
add_filter( ‘the_content’, ‘calculate_reading_time’ );

Tuttavia, potremmo non voler visualizzare l’ora di lettura in tutti i contesti (ad esempio, nell’abstract o nelle sorgenti RSS). È possibile ottimizzare la situazione aggiungendo condizioni di controllo.

function calculate_reading_time( $content ) {
    // 仅在主循环的单篇文章页面显示
    if ( is_single() &amp;&amp; in_the_loop() &amp;&amp; is_main_query() ) {
        $text = strip_tags( $content );
        $word_count = str_word_count( $text );
        $reading_time = ceil( $word_count / 200 );

$reading_time_html = ‘<div class="“reading-time”"><strong>📖 Tempo di lettura:</strong>Circa $reading_time… minuti.</div>’;
        return $reading_time_html . $content;
    }
    // 如果不是单篇文章,返回原内容
    return $content;
}
add_filter( ‘the_content’, ‘calculate_reading_time’ );

Per rendere lo stile più bello, possiamo anche aggiungere un po’ di CSS. Possiamo utilizzare…wp_enqueue_style()Una funzione per caricare in modo sicuro i file di stile (style sheets). Prima di tutto, crea un file all’interno della cartella dei plugin.style.cssIl file viene poi aggiunto alla coda tramite gli “action hooks”.

Si consiglia di leggere Una guida introduttiva allo sviluppo di plugin per WordPress: crea il tuo primo plugin funzionale da zero.

function my_plugin_styles() {
    wp_enqueue_style(
        ‘my-plugin-style’,
        plugin_dir_url( __FILE__ ) . ‘style.css’,
        array(),
        ‘1.0.0’
    );
}
add_action( ‘wp_enqueue_scripts’, ‘my_plugin_styles’ );

Best Practices per l’Internazionalizzazione e la Sicurezza degli Plugin

Un plugin professionale, rivolto a utenti di tutto il mondo, deve supportare l’internazionalizzazione (i18n), il che permette di tradurlo in altre lingue. Per implementare questa funzionalità è necessario utilizzare le funzioni di traduzione fornite da WordPress. Prima di tutto, è importante impostare correttamente le informazioni relative alla traduzione all’interno delle note presenti all’inizio del codice del plugin.Text DomainCome abbiamo impostato in precedenza…my-first-plugin

Nel codice, utilizzare per tutte le stringhe che necessitano di essere tradotte…()_e()esc_html()Queste funzioni vengono incapsulate (wrapper) per facilitarne l’utilizzo.

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.
$empo_di_camminata_html = ‘<div class="“reading-time”"><strong>’
    . esc_html__( ‘📖 Reading Time:’, ‘my-first-plugin’ )
    . ‘</strong>’
    . sprintf(
        esc_html__( ‘about %d minutes’, ‘my-first-plugin’ ),
        $reading_time
    )
    . ‘</div>’;

Poi, è necessario utilizzare uno strumento (come Poedit) per generare il contenuto desiderato..potFile di template: i traduttori possono utilizzarli per creare i contenuti desiderati..po.moI file devono essere posizionati all’interno dell’plugin.languagesNella cartella.

La sicurezza rappresenta l’elemento fondamentale nello sviluppo di plugin. È necessario seguire le seguenti pratiche di sicurezza essenziali:
1. **Verifica dei dati**: Effettuare controlli rigorosi su tutti i dati inseriti dagli utenti o provenienti da fonti esterne. Utilizzare funzioni appropriate per garantire l’accuratezza e la validità dei dati.sanitize_text_field()absint()Vengo a pulire i dati.
2. 数据转义:在将任何数据输出到HTML、JavaScript或URL之前,必须进行转义。使用esc_html()esc_attr()esc_url()wp_kses_post()e altre funzioni.
3. 非ce验证:对于涉及数据更改(如表单提交、AJAX请求)的操作,必须使用wp_nonceUn “token numerico” viene utilizzato per verificare la legittimità e l’intento della richiesta, al fine di prevenire attacchi CSRF (Cross-Site Request Forgery).
4. Verifica delle competenze: Prima di eseguire operazioni di gestione, è necessario utilizzare…current_user_can()La funzione verifica se l’utente attuale dispone di sufficienti autorizzazioni (ad esempio…)‘manage_options’)。

Riassumendo

Lo sviluppo di plugin per WordPress rappresenta un processo che trasforma le idee in funzionalità pratiche, e il suo nucleo risiede nella comprensione approfondita e nell’utilizzo flessibile del meccanismo dei “hook” (punti di interazione predefiniti nel sistema). Partendo dalla configurazione dell’ambiente di sviluppo e dalla creazione dei file di base, si interagisce in modo efficace con il core di WordPress attraverso azioni (actions) e filtri (filters) per costruire moduli funzionali utili. Un plugin di qualità non deve solo offrire funzionalità complete, ma deve anche rispettare standard elevati di internazionalizzazione e sicurezza, garantendo stabilità, affidabilità e compatibilità con utenti di tutto il mondo. Attraverso pratica costante e apprendimento, si può passare dallo sviluppo di plugin semplici a quello di estensioni più complesse, adatte anche all’uso in contesti commerciali.

FAQ - Domande frequenti

Per sviluppare plugin per WordPress è necessario conoscere bene PHP?

Sì, una solida conoscenza di PHP è fondamentale per lo sviluppo di plugin per WordPress. Il core di WordPress stesso è scritto in PHP, e l’intero funzionamento dei plugin e dei temi dipende da questa linguaggio di programmazione. È necessario essere a conoscenza della sintassi di PHP, delle funzioni disponibili, dei principi della programmazione orientata agli oggetti, nonché dei metodi per interagire con i database MySQL. Inoltre, una buona comprensione di HTML, CSS e JavaScript è essenziale per lo sviluppo di funzionalità interattive sul lato frontend.

Come devo debuggare il plugin per WordPress che ho sviluppato?

WordPress offre diversi strumenti per il debug. Innanzitutto, è possibile utilizzare…wp-config.phpAbilita il modalità di debug nel file.WP_DEBUGLa costante è impostata sutrueQuesto mostrerà sugli schermi gli errori, gli avvisi e le notifiche di PHP. Per un debug più avanzato, è possibile utilizzare…error_log()La funzione registra le informazioni nel log di errore del server, oppure utilizza strumenti di debug professionali come Query Monitor per visualizzare dettagli sui query al database, sull’esecuzione degli hook, sul caricamento dei script, e altro ancora.

Come posso pubblicare il plugin che ho sviluppato nel catalogo ufficiale di plugin di WordPress?

Per pubblicare un plugin nel catalogo ufficiale di WordPress.org, è necessario prima creare un account su WordPress.org e inviare il proprio plugin. Il plugin deve essere conforme agli standard e alle norme di codice ufficiali, tra cui l’utilizzo di una licenza compatibile con la GPLv2 o versioni successive, il rispetto delle migliori pratiche di sicurezza e la presenza di commenti dettagliati nei file di documentazione. Dopo l’invio, il team di revisione dei plugin esaminerà il plugin e, se approvato, esso potrà essere pubblicato. Una volta pubblicato, gli utenti potranno cercare, installare e aggiornare il plugin direttamente dalla loro interfaccia di amministrazione di WordPress.

Come posso creare una pagina di configurazione per la gestione del mio plugin?

Puoi utilizzare l“”Settings API” di WordPress per creare pagine di gestione standardizzate e sicure. I passaggi principali includono:add_menu_page()add_submenu_page()La funzione registra una nuova pagina del menu e successivamente la utilizza.add_settings_section()add_settings_field()Per definire l’area di impostazione e i campi, utilizzate…register_setting()Registra i tuoi dati, configura le impostazioni e attiva la funzione di salvataggio automatico e di verifica. Questo processo garantisce la sicurezza della pagina di configurazione e la compatibilità con l’interfaccia di gestione di WordPress.