L'architettura dei temi di WordPress e i file principali.

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

L'architettura dei temi di WordPress e i file principali.

Un tema standard per WordPress non è semplicemente un insieme di file di stile CSS: si tratta di un’entità organica composta da una serie di file di template PHP e di altri file di risorse che seguono specifiche convenzioni. Questi file lavorano insieme per combinare i contenuti presenti nel database con il design, generando la pagina web che l’utente visualizza finalmente.

Ogni tema si trova all’interno della directory di installazione di WordPress.wp-content/themesSi trova all’interno di una cartella e esiste come una cartella separata. L’elemento fondamentale di questo sistema è il “sistema di livelli dei template”: WordPress seleziona automaticamente il file di template più adatto in base al tipo della pagina richiesta (come la pagina iniziale, la pagina di un articolo, una pagina qualsiasi, la pagina di un catalogo, ecc.) per visualizzare il contenuto.

I due file più fondamentali e indispensabili sono:style.cssindex.phpstyle.cssNon solo definisce lo stile del tema, ma anche il blocco di commenti nella parte iniziale del file contiene le informazioni metadati del tema, come il nome del tema, l’autore, la descrizione, la versione, ecc. Questi sono gli unici elementi utilizzati da WordPress per riconoscere un tema.index.phpQuindi, questo rappresenta il template di riserva finale: se non esistono altri file di template più specifici, WordPress lo utilizzerà per impostazione predefinita.

Si consiglia di leggere Guida completa allo sviluppo di temi WordPress: un tutorial pratico da zero alla pubblicazione online.

File di definizione delle informazioni sull’argomento

Il tema delstyle.cssLa parte iniziale del file deve contenere una nota con un formato standard, utilizzata per registrare il tema con WordPress. Ecco un esempio:

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).
/*
Theme Name: My Awesome Theme
Theme URI: https://example.com/my-awesome-theme/
Author: Your Name
Author URI: https://example.com/
Description: 这是一个简洁、响应式的现代化WordPress主题。
Version: 1.0.0
License: GPL v2 or later
Text Domain: my-awesome-theme
*/

In questo contesto, “Text Domain” viene utilizzato per l’internazionalizzazione e rappresenta il dominio di testo su cui verranno applicate le funzioni di traduzione.__()_e()Identificatori che devono essere utilizzati in determinati contesti o momenti.

File di template principali e la loro struttura gerarchica

Il livello di gerarchia dei template di WordPress determina la logica di rendering delle diverse pagine. Ad esempio, quando si accede a un singolo articolo, WordPress cerca i template nell’ordine seguente:single-{post-type}-{slug}.php > single-{post-type}.php > single.php > singular.php > index.php

I file di template core più comuni includono:
* header.phpResponsabile della generazione della parte iniziale del documento, che di solito contiene:<!DOCTYPE html>Dichiarazione,<head>Struttura della parte superiore della pagina e delle aree specifiche (regioni).
* footer.phpResponsabile della visualizzazione delle informazioni in fondo alla pagina, tra cui i diritti d’autore e i file di script.
* sidebar.phpDefinire l’area della barra laterale.
* functions.phpFile per il potenziamento delle funzionalità di un tema: utilizzati per aggiungere nuove funzionalità, registrare menu, strumenti aggiuntivi (widget) e altro ancora.
* page.php: Viene utilizzato per rendere le pagine statiche.
* single.php`: Utilizzato per rendere un singolo articolo.
* archive.phpViene utilizzato per rendere le pagine che mostrano elenchi di articoli, come quelli per categorie, tag o articoli di autori.
* front-page.phpQuando viene impostata come pagina iniziale statica, questa template ha priorità rispetto alle altre.home.php
* home.phpPagina iniziale dell’elenco degli articoli del blog.

Sottotema: Best Practices per temi personalizzati per la sicurezza

Modificare direttamente i file dei temi di terze parti rappresenta un’azione ad alto rischio, poiché le aggiornamenti del tema sovrascrivono tutte le modifiche personalizzate apportate. Per questo motivo, WordPress offre il meccanismo dei sottotemi (subthemes). I sottotemi ereditano tutte le funzionalità e gli stili del tema principale (parent theme) e, allo stesso tempo, consentono di sovrascrivere in modo sicuro qualsiasi file del tema principale o di aggiungere nuove funzionalità.

Si consiglia di leggere Obbligatorio per i programmatori: come scegliere e personalizzare il tema WordPress più adatto a te

Creare un sottotema è molto semplice: basta semplicemente…themesCrea una nuova cartella all’interno del directory e poi crea un file che contenga le informazioni di intestazione necessarie.style.cssFile: deve essere passato attraverso…TemplateDeclara il suo tema padre.

Creare un sottotema di base

Un sottotema di base contiene soltanto due file:style.cssfunctions.php…del sottotemastyle.cssLe note nella parte superiore del documento devono specificare chiaramente il tema principale a cui si riferiscono.

/*
Theme Name: My Awesome Child Theme
Template: twentytwentyfour // 此行必须,且必须与父主题文件夹名称完全一致
Description: 这是 Twenty Twenty-Four 主题的子主题,用于自定义。
Version: 1.0
*/

Successivamente, è necessario lavorare sui sottotemi…functions.phpNel file vengono caricati in sequenza i file delle tabelle di stile relativi ai temi genitori (parent themes). Questa è un’operazione standard.

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%
<?php
add_action( 'wp_enqueue_scripts', 'my_child_theme_enqueue_styles' );
function my_child_theme_enqueue_styles() {
    wp_enqueue_style( 'parent-style',
        get_template_directory_uri() . '/style.css' // 加载父主题样式
    );
    wp_enqueue_style( 'child-style',
        get_stylesheet_directory_uri() . '/style.css', // 加载子主题样式
        array('parent-style'), // 声明依赖父样式
        wp_get_theme()->get('Version')
    );
}

In questo modo, lo stile del sottotema verrà caricato dopo lo stile del tema principale, garantendo che i tuoi CSS personalizzati possano sovrascrivere correttamente lo stile del tema principale.

\nCoverire i file del template del tema padre

Se hai bisogno di modificare la struttura di una pagina, basta copiare il file del template corrispondente dal tema padre nella directory del tema figlio e poi apportare le modifiche desiderate. Ad esempio, per modificare la pagina di un articolo, devi copiare il file del template dal tema padre nella directory del tema figlio relativo a quell’articolo.single.phpCopia il file nella directory radice del sottotema e modificalo. WordPress utilizzerà prioritariamente la versione del file presente nel sottotema.

Core elements of theme development: function files and template tags

functions.phpQuesto file rappresenta il “cervello” del tema: consente agli sviluppatori di aggiungere varie funzionalità a WordPress senza dover modificare i file principali del tema stesso. Viene caricato automaticamente all’avvio del tema. Le etichette dei template, invece, sono funzioni PHP che vengono chiamate all’interno dei file dei template per generare in modo dinamico il contenuto da visualizzare.

Si consiglia di leggere Temi WordPress di alta qualità selezionati per il 2026: guida allo sviluppo gratuito e a pagamento.

L’applicazione dei file contenenti funzioni di utilità

functions.phpIn questo contesto, è possibile estendere le funzionalità utilizzando gli “action hooks” e i filtri. Ad esempio, per registrare un’area che rappresenta il menu di navigazione principale:

<?php
add_action( 'after_setup_theme', 'mytheme_setup' );
function mytheme_setup() {
    // 注册导航菜单
    register_nav_menus( array(
        'primary' => __( '主导航菜单', 'mytheme-textdomain' ),
        'footer'  => __( '页脚菜单', 'mytheme-textdomain' ),
    ) );
    // 添加主题对文章特色图像的支持
    add_theme_support( 'post-thumbnails' );
}

Un’altra operazione comune è registrare una barra laterale per un piccolo strumento (un “plugin” o una funzionalità aggiuntiva).

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.
add_action( 'widgets_init', 'mytheme_widgets_init' );
function mytheme_widgets_init() {
    register_sidebar( array(
        'name'          =&gt; __( '文章侧边栏', 'mytheme-textdomain' ),
        'id'            =&gt; 'sidebar-1',
        'description'   =&gt; __( '在此添加文章页的小工具。', 'mytheme-textdomain' ),
        'before_widget' =&gt; '<section id="%1$s" class="widget %2$s">',
        'after_widget'  =&gt; '</section>',
        'before_title'  =&gt; '<h2 class="widget-title">',
        'after_title'   =&gt; '</h2>',
    ) );
}

Analisi dei tag delle template più comuni

I tag di template vengono utilizzati nei file di template (come…)header.php, single.phpInserire dati dinamici all’interno di un testo. Ad esempio:
* wp_head()wp_footer()Devono essere posizionati separatamente all’interno dell’argomento principale.header.php<head>Prima della fine…footer.php<p>Io non sono un'attrice.</p>Utilizzato prima dei tag, per l’inserimento di codice sia per i plugin che per le funzionalità principali del sistema.
* bloginfo(‘name’): Visualizza il titolo del sito web.
* the_title()Eseguire l’output del titolo dell’articolo o della pagina corrente all’interno di un ciclo.
* the_content(): Riassume i contenuti principali dell’articolo/pagina.
* the_permalink()Ottenere il link fisso dell’articolo attuale.
* the_post_thumbnail(): Mostra le immagini caratteristiche dell’articolo.
* dynamic_sidebar(‘sidebar-1’)Mostra nell’area dei widget del template la sezione specificata dall’ID specificato.

Un semplice esempio di ciclo per l’elaborazione di articoli, che si trova solitamente in…index.phparchive.phpCinese:

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
    <article>
        <h2><a href="/it/</?php the_permalink(); ?>"><p><strong>Questo testo verrà sostituito dal titolo dell'articolo corrente.</strong></p></a></h2>
        <?php the_excerpt(); ?>
    </article>
<?php endwhile; endif; ?>

Design responsivo e ottimizzazione delle prestazioni dei temi (temi grafici utilizzati nel sito web)

I temi per WordPress moderni devono essere responsive, in modo da offrire un’ottima esperienza di navigazione su diversi dispositivi. Inoltre, l’ottimizzazione delle prestazioni influisce direttamente sull’esperienza utente e sulle posizioni nei motori di ricerca (SEO).

Realizzare un layout responsive.

Il design responsivo viene solitamente realizzato utilizzando le query di media di CSS.style.cssDovrebbero essere incluse regole di stile adatte a diverse dimensioni di schermo. Inoltre, è necessario assicurarsi che…header.php<head>Aggiungere i metatag di viewport alla regione:

<meta name="viewport" content="width=device-width, initial-scale=1">

Per quanto riguarda le immagini, è possibile utilizzare…srcsetGli attributi permettono al browser di selezionare l’immagine di dimensioni appropriate in base alla risoluzione dello schermo, soprattutto in WordPress.the_post_thumbnail()La funzione supporta automaticamente questa caratteristica quando vengono passati i parametri appropriati.

Strategie di ottimizzazione delle prestazioni per i temi (Theme Performance Optimization Strategies)

L’ottimizzazione delle prestazioni coinvolge diversi aspetti. Innanzitutto, è necessario assicurarsi che gli script e i file di stile vengano caricati nella sequenza corretta, specificando le giuste dipendenze per evitare blocchi nel processo di rendering.wp_enqueue_script()L’ultimo parametro di una funzione può essere impostato come…truePosizionare lo script in fondo al file per il caricamento successivo.

In secondo luogo, è importante utilizzare al meglio le funzionalità di cache e le API transitorie offerte da WordPress. Per i risultati provenienti dal database che non cambiano frequentemente ma richiedono un’elaborazione computazionale onerosa, è possibile applicare strategie di caching per migliorare le prestazioni del sito.set_transient()get_transient()Esegui l’archiviazione dei dati per evitare richieste di consultazione ripetute.

Inoltre, l’ottimizzazione delle immagini, il “lazy loading” (caricamento differito dei contenuti), la riduzione del numero di richieste HTTP (ad esempio unificando i file CSS/JS) e l’utilizzo di formati di immagini moderni come WebP sono elementi fondamentali per migliorare le prestazioni del sito web. Molte di queste funzionalità possono essere implementate tramite plugin per l’ottimizzazione delle prestazioni (come WP Rocket) o librerie di script indipendenti, ma il tema stesso deve fornire una base di compatibilità adeguata per garantire un funzionamento corretto di tali strumenti.

Infine, assicuratevi che il codice relativo ai temi sia semplice ed efficiente, evitando query al database non necessarie. Durante lo sviluppo, è possibile utilizzare plugin come Query Monitor per monitorare il numero di query eseguite durante il caricamento delle pagine e individuare eventuali punti di blocco nel loro funzionamento.

Riassumendo

Comprendere e padroneggiare lo sviluppo di temi per WordPress rappresenta un passo fondamentale per passare da un utente occasionale a un professionista nella creazione di siti web. Partendo dall’architettura di base dei temi e dalla struttura dei loro file di template, si passa all’utilizzo dei sottotemi (subthemes) per personalizzazioni sicure, fino ad arrivare a tecniche più avanzate per ottimizzare il funzionamento del sito.functions.phpI tag dei template conferiscono ai temi funzionalità dinamiche molto potenti; ogni aspetto del loro funzionamento si basa sul sistema robusto e flessibile di WordPress. Infine, per un tema di successo è fondamentale non trascurare il design responsivo e l’ottimizzazione delle prestazioni, aspetti che influenzano direttamente l’accessibilità del sito su diversi dispositivi, l’esperienza utente e le prestazioni nei motori di ricerca. Seguendo le migliori pratiche e le norme di sviluppo, è possibile creare temi per WordPress belli, efficienti e facili da mantenere.

FAQ - Domande frequenti

Come modificare la disposizione di una pagina specifica di un tema?

Innanzitutto, utilizzando la struttura gerarchica dei template di WordPress, determina quale file di template viene utilizzato dalla pagina che desideri modificare (ad esempio, una pagina appartenente a una determinata categoria potrebbe utilizzare un file di template specifico).category-{slug}.phpPoi, nella directory del sottotema, crea un file con lo stesso nome del file corrispondente presente nel tema principale, copia il suo contenuto e apporta le modifiche desiderate. In questo modo, WordPress utilizzerà prioritariamente il file di template presente nel tuo sottotema.

Perché i miei stili CSS personalizzati non sono stati applicati?

Questo problema è solitamente causato da una specificità insufficiente dei selezionatori CSS o da un ordine di caricamento errato dei file CSS. Per prima cosa, controlla gli strumenti di sviluppo del browser per verificare se le tue regole CSS vengono applicate o se vengono sovrascritte da altre regole con una specificità maggiore. Inoltre, assicurati che stia modificando i file relativi al tema “subtheme”.style.cssIl file è stato creato e ha già superato i requisiti di verifica.wp_enqueue_style()Il caricamento avviene in modo corretto, seguendo l’ordine previsto; inoltre, il file viene inserito dopo lo stile del tema principale. Aggiungilo dopo le regole di stile personalizzate.!importantSi tratta di una soluzione temporanea, ma è preferibile risolvere il problema aumentando la specificità dei selezionatori.

Quando si sviluppa un tema, come si possono debuggare gli errori in PHP?

Si consiglia di attivare il modalità di debug di WordPress nell’ambiente di sviluppo. Per farlo, bisogna accedere alle impostazioni di WordPress e selezionare l’opzione relativa al debug.wp-config.phpFile: Trova e modifica le definizioni correlate come segue:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true ); // 将错误记录到 /wp-content/debug.log
define( 'WP_DEBUG_DISPLAY', false ); // 不要在页面上显示错误

In questo modo, gli errori e gli avvisi di PHP verranno registrati in un file di log e non verranno mostrati direttamente agli utenti, il che ti facilita la ricerca delle cause dei problemi.

Il mio tema deve supportare più lingue: come posso procedere?

WordPress utilizza il framework gettext per l’internazionalizzazione. Devi fare due cose: prima di tutto, in tutto il codice, nei punti in cui sono presenti stringhe da tradurre, devi utilizzare le funzioni di traduzione appropriate.__(‘文本’, ‘text-domain’)_e(‘文本’, ‘text-domain’)Effettuare l’imballaggio e assicurarsi che tutto vada secondo i requisiti.text-domainIl primo punto riguarda la necessità di mantenere l’accuratezza nell’utilizzo del dominio di testo (text domain) correlato all’argomento trattato. Il secondo punto suggerisce l’uso di strumenti come Poedit per analizzare il codice sorgente del tema e generare i contenuti necessari..potI file di template vengono utilizzati come modello per creare le versioni del software in lingue diverse.zh_CN.poIl file di traduzione per…) deve essere compilato infine in….moFile, inseriti all’interno del tema.languagesBasta una cartella.