Imparare a sviluppare temi per WordPress: costruire temi per siti web di livello professionale da zero.

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

La struttura di base e i file principali dello sviluppo di temi per WordPress

Un tema standard per WordPress segue una struttura di directory e convenzioni per i file ben definite. Comprendere queste regole rappresenta il punto di partenza per lo sviluppo. Ogni tema deve contenere un file di stile (stylesheet) e un file di template iniziale.

I file principali rappresentano la base fondamentale di un tema (o di un progetto).style.cssI file non solo definiscono lo stile del sito web, ma forniscono anche i metadati del tema a WordPress tramite i commenti presenti nella parte iniziale del file (Header Comment). Questi metadati includono il nome del tema, l’autore, una descrizione e la versione. Se i file non sono formattati correttamente, i metadati non verranno letti correttamente da WordPress, il che potrebbe causare problemi nell’uso del tema.style.cssWordPress non riconoscerà questo tema.

index.phpSi tratta del livello di fallback più avanzato all’interno della struttura gerarchica dei template, ovvero il file di requisito minimo che ogni tema deve possedere. Oltre a questi due file, tra i file di template coreani più comuni figurano anche…header.php(Intestazione),footer.php(Footnote)sidebar.php(Sidebar) Efunctions.php(Fichiera di funzioni).functions.phpSvolge un ruolo speciale: non si tratta di un file di template tradizionale, bensì di un file “plugin” utilizzato per potenziare le funzionalità di un tema, aggiungere menù di registrazione, supporto per immagini personalizzate, e altro ancora.

Si consiglia di leggere Sviluppo di un tema WordPress dall'inizio alla fine: una guida completa alla costruzione di siti web personalizzati

Attraverso la collaborazione di questi file, WordPress è in grado di creare contenuti web dinamici. Ad esempio,header.phpNel contesto in cui ti trovi, eseguirai una chiamata (o una funzione) specifica.wp_head()Le funzioni rappresentano i “ganci” chiave necessari per inserire codice nel nucleo di WordPress e nei plugin, sia esso CSS che JavaScript.footer.phpViene utilizzato nella…wp_footer()Gancio.

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

Approfondire i livelli dei template e il meccanismo del ciclo principale

Il punto di forza di WordPress risiede nel suo intelligente sistema di “livelli di template”. Quando si accede a un URL, WordPress seleziona automaticamente il file di template più adatto in base al tipo di richiesta per renderizzare la pagina. Ad esempio, quando si visita un articolo del blog, WordPress cerca sequenzialmente…single-post.phpsingle.phpInfine, torna indietro a…index.phpQuesta struttura gerarchica consente agli sviluppatori di creare layout personalizzati per diversi tipi di contenuti (come pagine, categorie, tag, pagine degli autori).

Comprendere il funzionamento del ciclo principale

Il cuore di tutta la visualizzazione dei contenuti è il “Main Loop” (Il Ciclo Principale). Si tratta di una struttura di codice PHP utilizzata per verificare e visualizzare i post presenti nell’query della pagina attuale.ifwhileEcco un esempio di istruzione utilizzata per iterare sui dati dei post:

Ecco un esempio di struttura di ciclo di base:

<article id="post-<?php the_ID(); ?>" no numeric noise key 1005>
            <h2><a href="/it/</?php the_permalink(); ?>"><p><strong>Questo testo verrà sostituito dal titolo dell'articolo corrente.</strong></p></a></h2>
            <div class="entry-content">
                <p><strong>Questo testo è stato tradotto automaticamente. Se desideri una traduzione corretta, contattaci.</strong></p>
            </div>
        </article>

In questo ciclo,have_posts()the_post()Le funzioni controllano il flusso di esecuzione del codice, mentre i tag delle template…the_title()the_content()the_permalink()Viene utilizzato per visualizzare i dati specifici di un post.

Si consiglia di leggere Guida completa allo sviluppo di temi WordPress: dalla creazione di un tema da zero alla costruzione di un sito web professionale.

Implementare il ragionamento logico basato su tag condizionali

“I tag condizionali” sono strumenti di giudizio logico che completano la struttura gerarchica dei template. Ti permettono di eseguire codice diverso all’interno dei file di template in base a diverse condizioni (ad esempio, “se si tratta della pagina principale”, “se si tratta di un singolo articolo”, “se l’utente è connesso”). Ad esempio, puoi utilizzarli nel template della barra laterale.if ( ! is_page( ‘about’ ) )Per determinare se la pagina attuale non sia una pagina di tipo “informazioni” (cioè una pagina che fornisce contenuti specifici su un argomento), viene visualizzato un’area pubblicitaria specifica. L’utilizzo di tag condizionali rende i template tematici più flessibili e intelligenti.

Integrazione delle funzionalità e personalizzazione dei temi

I temi moderni per WordPress non sono semplicemente delle “skin” per visualizzare i contenuti, ma rappresentano anche un veicolo per l’implementazione di funzionalità aggiuntive. Attraverso di essi…functions.phpAggiungendo codice all’interno dei file tematici, è possibile espandere e modificare il comportamento di tali temi in modo sicuro, senza dover modificare i file principali del sistema.

Aggiungere il supporto per i temi e il menu di navigazione per la registrazione.

Molte funzionalità del nucleo di WordPress richiedono che il tema dichiari esplicitamente il proprio “supporto” per tali funzionalità. Ciò avviene tramite specifiche configurazioni o codici presenti nel file di configurazione del tema (solitamente `wp-config.php`).add_theme_support()Implementazione delle funzioni. Ad esempio, abilitare l’utilizzo di immagini di rilievo per gli articoli, loghi personalizzati o formati di visualizzazione specifici. Per registrare i menu di navigazione, si utilizza un processo specifico.register_nav_menus()Definisci le posizioni delle voci del menu (ad esempio, “Menu principale in alto”, “Menu in fondo alla pagina”), e poi utilizzale per…wp_nav_menu()Chiamare dal template.

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%

以下是一个在functions.phpEsempio di registrazione del menu e attivazione della funzione delle immagini speciali:

function mytheme_setup() {
    // 注册菜单位置
    register_nav_menus( array(
        ‘primary’ => __( ‘主要导航菜单’, ‘mytheme’ ),
        ‘footer’  => __( ‘页脚菜单’, ‘mytheme’ ),
    ) );

// 为主题添加特色图片支持
    add_theme_support( ‘post-thumbnails’ );

// 添加HTML5标记支持
    add_theme_support( ‘html5’, array( ‘search-form’, ‘comment-form’, ‘comment-list’, ‘gallery’, ‘caption’ ) );
}
add_action( ‘after_setup_theme’, ‘mytheme_setup’ );

Il modo corretto per introdurre fogli di stile (style sheets) e script è il seguente:

Per motivi di prestazioni e sicurezza, non è consigliabile creare collegamenti diretti (hard links) ai file CSS e JS all’interno dei file di template. È preferibile utilizzare altri metodi per includere tali file nel progetto.wp_enqueue_style()wp_enqueue_script()Funzioni. Queste funzioni assicurano che le dipendenze vengano gestite correttamente, evitando il caricamento ripetuto dei file e consentendo agli plugin nonché ad altri tipi di codice di intervenire nel processo di caricamento. Le operazioni di caricamento corrette devono essere collegate (o “hooked”) alle funzionalità appropriate del sistema.wp_enqueue_scriptsDal punto di vista delle azioni da compiere.

Creare e utilizzare le opzioni personalizzabili di un tema

Per permettere agli utenti di modificare gli aspetti di un tema (ad esempio, cambiare i colori o caricare un logo) senza dover modificare il codice sorgente, è necessario creare un’opzione o una pagina di configurazione chiamata “Personalizzatore del tema” (Theme Customizer). L’API del Personalizzatore del tema fornita da WordPress offre le funzionalità necessarie per realizzare questo.$wp_customize->add_setting()$wp_customize->add_control()Metodi come questi ti permettono di aggiungere diversi tipi di controlli (selettori di colore, caricabili di immagini, menu a discesa, ecc.) e di ottenere una preview in tempo reale. Ciò migliora notevolmente l’usabilità e la professionalità del tema.

Si consiglia di leggere Guida completa allo sviluppo di temi WordPress: creare temi per siti web di livello professionale partendo da zero.

Advanced Development Techniques and Performance Optimization

Costruire un tema di livello professionale significa dover prendere in considerazione la qualità del codice, la manutenibilità, la sicurezza e le prestazioni.

Implementare la modifica sicura di sottotemi

Non modificare mai direttamente il codice di terze parti o di temi genitori, poiché gli aggiornamenti potrebbero sovrascrivere le tue modifiche. La procedura corretta consiste nella creazione di “temi figli”. Un tema figlio richiede soltanto…style.cssE unofunctions.phpI file permettono di ereditare tutte le funzionalità e gli stili del tema padre, per poi sovrascriverli in modo sicuro o aggiungere nuove funzionalità. Questa è la migliore pratica per la personalizzazione dei temi e la loro manutenzione a lungo termine.

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.

Costruire un layout responsive

Con l’aumento esponenziale del traffico proveniente da dispositivi mobili, i siti web devono essere progettati in modo da adattarsi automaticamente alle diverse dimensioni degli schermi. Questo obiettivo viene raggiunto principalmente utilizzando le query di tipo “media” presenti nel CSS, che consentono agli elementi del sito (come le immagini) di ridimensionarsi in modo appropriato in base alle caratteristiche dello schermo. Anche il core di WordPress gestisce automaticamente la visualizzazione di immagini di dimensioni diverse in base alle dimensioni dello schermo dell’utente; puoi sfruttare queste funzionalità per ottimizzare l’esperienza di utilizzo del tuo sito.srcsetGli attributi vengono utilizzati per ottimizzare il caricamento delle immagini.

Effettuare i preparativi per l'internazionalizzazione e la localizzazione.

Per consentire all’argomento di essere utilizzato da utenti in tutto il mondo, è necessario eseguire l’operazione di “internazionalizzazione” (i18n). Ciò significa che tutte le stringhe destinate agli utenti devono essere avvolte nelle funzioni di traduzione fornite da WordPress.__( ‘Read More’, ‘mytheme’ )esc_html_e( ‘Hello World’, ‘mytheme’ )Tra questi,mythemeSi tratta di un campo di testo che deve essere in linea con il “slug” del tema. Successivamente, il traduttore può procedere con il lavoro di traduzione..potI file sono stati creati in diverse lingue..moFile da tradurre.

Ottimizzare le prestazioni del tema.

Le prestazioni sono di fondamentale importanza. Le misure di ottimizzazione includono: la fusione e la compressione dei file CSS/JavaScript, l’utilizzo dell’API di cache di WordPress, la garanzia di efficienza delle query al database (evitando di eseguirle all’interno di cicli), nonché l’impiego degli script e degli stili integrati in WordPress per ridurre il numero di richieste HTTP. Durante la fase di sviluppo, è sempre necessario seguire gli standard di codifica di WordPress e utilizzare funzioni appropriate per la pulizia, la validazione e l’elaborazione dei dati forniti dagli utenti, nonché per l’elaborazione delle query SQL e dell’output dei template.wp_kses(), esc_attr(), prepare()Per prevenire vulnerabilità di sicurezza.

Riassumendo

Imparare a sviluppare temi per WordPress è un processo graduale che inizia dalla comprensione della struttura dei file di base e degli strati dei template, per poi approfondirsi nei meccanismi di iterazione, nell’integrazione delle funzionalità e, infine, nell’ottimizzazione delle prestazioni e nell’aumento della sicurezza del sito. La chiave per creare temi di livello professionale consiste nel seguire le migliori pratiche: utilizzare gli “hook” e le funzioni per estendere le funzionalità del tema, abilitare opzioni personalizzabili che gli utenti possono configurare, e prestare sempre attenzione al design responsivo, al supporto per l’internazionalizzazione e alle prestazioni del codice. Creare sottotemi (subthemes) per adattarsi a futuri aggiornamenti e manutenzioni permette di garantire che il proprio lavoro abbia una longevità maggiore. Continuare a imparare e ad adottare gli standard di codifica raccomandati dalla comunità è l’unico modo per diventare un ottimo sviluppatore di temi per WordPress.

FAQ - Domande frequenti

Quali conoscenze di base sono necessarie per sviluppare un tema WordPress?

Per sviluppare temi per WordPress è necessario padroneggiare le nozioni di base di HTML, CSS e PHP. Inoltre, avere una certa conoscenza di JavaScript, soprattutto per quanto riguarda la gestione di interazioni e contenuti dinamici, è molto utile. Comprendere i concetti fondamentali di WordPress, come la struttura dei template, il “The Loop” (il ciclo principale di elaborazione dei contenuti) e gli “Hooks” (i meccanismi di integrazione tra moduli), è essenziale per sviluppare temi di successo.

Qual è la principale differenza tra i file di tema e i file di plugin?

Il file tematico (situato in…)/wp-content/themes/È principalmente responsabile del controllo del modo in cui vengono visualizzati i contenuti del sito web, ovvero dell’aspetto e della disposizione dello stesso. I file dei plugin (che si trovano…)/wp-content/plugins/Vengono utilizzati per aggiungere nuove funzionalità al sito web, funzionalità che possono esistere indipendentemente dal tema attualmente in uso. Un semplice principio di giudizio è il seguente: le modifiche che influenzano l’aspetto del sito vengono solitamente apportate direttamente nel tema, mentre il codice necessario per aggiungere nuove funzionalità è più adatto da inserire nei plugin.

Perché i miei stili personalizzati sono scomparsi dopo l’aggiornamento?

Questo succede solitamente perché hai modificato direttamente il tema padre o un tema di terze parti.style.cssI tuoi modifiche ai file verranno sovrascritte ogni volta che verrà pubblicato un aggiornamento relativo a quel tema. Per applicare stili personalizzati in modo permanente e sicuro, ti consigliamo caldamente di creare un sottotema (subtopic). Nel sottotema, potrai modificare i file in modo che tali modifiche rimangano visibili anche dopo eventuali aggiornamenti del tema principale.style.cssScrivi le tue regole di stile nel file, in modo che anche in caso di aggiornamenti del tema principale, i tuoi stili personalizzati non vengano persi.

Come posso rendere il mio tema compatibile con più lingue?

Devi internazionalizzare il tuo tema. Per farlo, nelle tue file di template PHP, devi incapsulare tutte le stringhe di testo destinate all’utente all’interno di una funzione di traduzione specifica. Ad esempio:esc_html_e(‘Hello’, ‘my-theme’)Poi, utilizzare uno strumento (come Poedit) per generare….potTraduci il file di template. I traduttori possono utilizzare questo modello per creare versioni del file in diverse lingue (ad esempio…).zh_CN.po.moPer implementare il cambio di lingua, è necessario creare un file di traduzione contenente le corrispondenze tra le parole o frasi della lingua originale e quelle della lingua desiderata. Successivamente, è sufficiente caricare questo file nel campo di testo del tuo tema per applicare il cambio di lingua.