I concetti fondamentali dello sviluppo di temi per WordPress

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

I concetti fondamentali dello sviluppo di temi per WordPress

Lo sviluppo di temi per WordPress consiste nella creazione di un insieme di file di template utilizzati per controllare l’aspetto e le funzionalità di un sito web basato su WordPress. Un tema completo non solo definisce lo stile visivo del sito, ma determina anche il modo in cui vengono visualizzati i diversi tipi di contenuti, grazie a una serie di file di template. Comprendere i concetti fondamentali legati allo sviluppo di temi rappresenta il primo passo per iniziare a lavorare in questo ambito.

Il cuore di un tema WordPress è il sistema di gerarchia dei template. Quando un visitatore richiede una pagina, WordPress cerca il file del template corrispondente seguendo un ordine di priorità prestabilito, in base al tipo di contenuto richiesto. Ad esempio, per un articolo di blog, WordPress cercherà prima…single-post.phpSe non esiste, si passerà a una soluzione più generica.single.phpE, infine,index.phpGli sviluppatori devono comprendere questa struttura gerarchica per creare temi ben organizzati e facili da mantenere.

Un altro concetto fondamentale sono le etichette di template. Le etichette di template sono funzioni PHP integrate in WordPress, utilizzate per generare dinamicamente il contenuto all’interno dei file di template. Ad esempio,the_title()Utilizzato per visualizzare il titolo dell’articolo.the_content()Utilizzato per visualizzare il corpo del testo dell’articolo.bloginfo('name')Utilizzato per ottenere il nome del sito web. Essere esperti nell’utilizzo di queste funzioni è fondamentale per lo sviluppo di temi (temi per siti web).

Si consiglia di leggere Guida completa allo sviluppo di temi per WordPress: costruire siti web professionali da zero

Anche la separazione tra lo stile e le funzionalità di un tema rappresenta un principio importante. Lo stile è controllato dai file CSS, mentre le funzionalità vengono gestite direttamente dal tema stesso.functions.phpAggiunta di un file. Questo file rappresenta un “plugin funzionale” per il tema, utilizzato per registrare menu, barre laterali, e per aggiungere funzionalità supportate dal tema (ad esempio, miniature di articoli), nonché per gestire l’ordine di caricamento di script e fogli di stile.

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

La struttura di base di un file tematico

Un tema WordPress semplificato al massimo richiede almeno due file:style.cssindex.phpstyle.cssIl file non contiene soltanto i codici CSS, ma anche delle note nella parte iniziale del file (header) che forniscono informazioni metadati sul tema: nome del tema, autore, descrizione e versione. Queste informazioni sono essenziali affinché WordPress possa riconoscere e utilizzare correttamente il tema.

index.phpSi tratta del file di template predefinito per il tema; viene utilizzato in caso di assenza di file di template più specifici. È una versione di base del tema stesso.index.phpI file di solito contengono istruzioni per richiamare la parte iniziale del sito web (header), l’area principale che ospita il contenuto principale (body) e la parte finale del sito web (footer).

<p><strong>Questo è un testo di esempio.</strong></p>

<main id="primary" class="site-main">
    &lt;?php
    if ( have_posts() ) :
        while ( have_posts() ) :
            the_post();
            // 输出文章内容
            the_title( &#039;<h2>', '</h2>' );
            the_content();
        endwhile;
    else :
        echo '<p>没有找到任何内容。</p>';
    endif;
    ?&gt;
</main>

I file di template essenziali per la creazione di un tema

Oltre ai file di base, un tema completo e funzionale include solitamente una serie di file di template utilizzati per controllare l’aspetto delle diverse parti del sito web. Questi file insieme costituiscono lo “scheletro” del tema stesso.

Prima di tutto,header.phpfooter.phpSono stati definiti separatamente il titolo della pagina (header) e la parte inferiore della pagina (footer) del sito web. Il titolo della pagina contiene solitamente la dichiarazione del tipo di documento, nonché informazioni relative all’area visualizzata dall’utente.wp_head()Il contenuto principale della pagina include elementi come i “hook fill” (elementi utilizzati per riempire lo spazio disponibile), il logo del sito web e il menu di navigazione principale. La parte inferiore della pagina (footer) solitamente contiene aree per widget, informazioni sul copyright e altri contenuti aggiuntivi.wp_footer()Ganci… Separandoli, è possibile riutilizzare il codice e migliorarne l’efficienza.get_header()get_footer()La funzione può essere introdotta in qualsiasi template.

Si consiglia di leggere Sviluppo di temi per WordPress: dalla prima idea alla creazione di temi per siti web di livello professionale

In secondo luogo,sidebar.phpÈ stata definita l’area del menu laterale, che di solito contiene i collegamenti alle funzionalità disponibili nell’area degli strumenti (toolbars).get_sidebar()È possibile integrarlo nella pagina. Per quanto riguarda i modelli di contenuto…single.phpUtilizzato per visualizzare un singolo articolo di blog o un tipo di articolo personalizzato.page.phpUtilizzato per visualizzare pagine statiche.archive.phpViene utilizzato per visualizzare elenchi di articoli, ad esempio nelle pagine di archiviazione per categoria, tag, autore o data.

Utilizzare componenti template per realizzare un approccio modulare.

Per i layout più complessi, WordPress ha introdotto il concetto di “template parts” (pezzi di codice predefiniti). I template parts sono frammenti di codice riutilizzabili, più flessibili rispetto ai file di template completi. Di solito vengono memorizzati all’interno dei temi (i file di configurazione grafica di WordPress).template-partsNella cartella… Ad esempio, puoi creare una nuova cartella.template-parts/content.phpI file definiscono il modo in cui i contenuti degli articoli vengono visualizzati nell’elenco.

// 在 archive.php 中调用模板部件
<?php while ( have_posts() ) : the_post(); ?>
    <?php get_template_part( 'template-parts/content', get_post_type() ); ?>
<?php endwhile; ?>

Questo codice cercherà di caricare…template-parts/content-post.php(Assumendo che il tipo dell’articolo sia ’post”), se non esiste, tornare alla configurazione predefinita.template-parts/content.phpQuesto approccio ha notevolmente migliorato la manutenibilità e la flessibilità del codice.

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%

Estendere le funzionalità di un tema in functions.php

functions.phpI file rappresentano il “cervello” di un tema, utilizzati per estendere le funzionalità di tale tema tramite codice PHP. L’inizializzazione di tutte le funzionalità fondamentali deve avvenire proprio in questi file. Prima di tutto, è necessario utilizzare…add_theme_support()Le funzioni vengono utilizzate per dichiarare le varie funzionalità supportate da un determinato tema.

Ad esempio, abilitare le miniature degli articoli (immagini di rilievo) è una funzionalità standard nei temi moderni. È necessario…functions.phpAggiungi il seguente codice:

function my_theme_setup() {
    // 添加文章和页面支持文章缩略图
    add_theme_support( 'post-thumbnails' );
    // 添加对HTML5标记的支持
    add_theme_support( 'html5', array( 'comment-list', 'comment-form', 'search-form', 'gallery', 'caption', 'style', 'script' ) );
    // 添加标题标签支持
    add_theme_support( 'title-tag' );
    // 添加自定义徽标支持
    add_theme_support( 'custom-logo' );
}
add_action( 'after_setup_theme', 'my_theme_setup' );

Menù di registrazione e barra laterale

Anche il menu di navigazione del sito web e l’area degli strumenti aggiuntivi (barra laterale) devono essere inclusi.functions.phpRegistrazione presso… Utilizzo:register_nav_menus()Le funzioni possono essere utilizzate per registrare le posizioni dei piatti, e successivamente…header.phpUtilizzare nel contestowp_nav_menu()Per visualizzarlo.

Si consiglia di leggere Introduzione allo sviluppo di temi per WordPress: costruisci il tuo primo tema personalizzato da zero

function my_theme_menus() {
    register_nav_menus(
        array(
            'primary' => __( '主导航菜单', 'my-theme' ),
            'footer'  => __( '页脚菜单', 'my-theme' ),
        )
    );
}
add_action( 'init', 'my_theme_menus' );

La barra laterale (in WordPress chiamata “area degli strumenti”) viene utilizzata per visualizzare informazioni aggiuntive o per accedere a funzionalità specifiche.register_sidebar()Registrazione delle funzioni: È possibile registrare più widget da utilizzare in posizioni come il piede di pagina o la barra laterale del blog.

Introdurre correttamente i file di script e i file di stile.

Per seguire le migliori pratiche e evitare conflitti, tutti i file JavaScript e CSS dovrebbero essere caricati tramite…wp_enqueue_script()wp_enqueue_style()Viene introdotta la funzionalità di “coda di attesa per le funzioni” (function queue). Questo garantisce che le dipendenze siano rispettate e che i file vengano caricati soltanto nelle pagine in cui sono effettivamente necessari. Questa operazione dovrebbe essere implementata (ovvero “montata”/aggiunta al sistema).wp_enqueue_scriptsSul gancio.

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 my_theme_scripts() {
    // 引入主题的主样式表
    wp_enqueue_style( 'my-theme-style', get_stylesheet_uri(), array(), wp_get_theme()->get( 'Version' ) );
    // 引入自定义JavaScript文件
    wp_enqueue_script( 'my-theme-navigation', get_template_directory_uri() . '/js/navigation.js', array(), wp_get_theme()->get( 'Version' ), true );
}
add_action( 'wp_enqueue_scripts', 'my_theme_scripts' );

Realizzare un design responsivo e la personalizzazione dei temi.

Nello sviluppo web moderno, il design responsivo è essenziale: ciò significa che il tema utilizzato deve essere in grado di adattarsi a diverse dimensioni di schermo, da quelle dei desktop a quelle dei telefoni cellulari. Questo viene realizzato principalmente attraverso le query di media CSS. Nel tema in questione…style.cssIn questo contesto, dovresti definire stili diversi per i vari punti di interruzione (breakpoints).

Molti sviluppatori adottano una strategia incentrata sui dispositivi mobili: innanzitutto creano lo stile di base per le versioni mobili e successivamente utilizzano…min-widthLe query dei media aggiungono stili migliorati per schermi più grandi. Inoltre, assicuratevi che immagini ed elementi multimediali siano correttamente visualizzati su tali schermi.max-width: 100%; height: auto;Gli attributi possono essere utilizzati per prevenire che i contenuti escedano dai confini del contenitore (ad esempio, un elemento grafico o un testo).

Utilizzare i personalizzatori di WordPress per migliorare l’esperienza utente.

Il Personalizzatore di WordPress (Customizer) consente agli utenti di visualizzare in tempo reale e modificare alcune impostazioni del tema, come i colori, le immagini di sfondo o il testo del titolo. Aggiungere il supporto per il Personalizzatore a un tema può notevolmente migliorarne l’aspetto professionale e l’usabilità.

Hai bisogno di…functions.phpUtilizzare nel contestoadd_action( 'customize_register', 'my_theme_customize_register' )Gli “hook” (ganci) vengono utilizzati per registrare i pannelli personalizzabili, i blocchi di contenuto e i controlli (componenti grafici). Ad esempio, per aggiungere un semplice controllo che permetta di modificare il colore del titolo del sito:

function my_theme_customize_register( $wp_customize ) {
    // 添加一个设置项
    $wp_customize->add_setting( 'header_title_color', array(
        'default'           => '#333333',
        'sanitize_callback' => 'sanitize_hex_color',
        'transport'         => 'postMessage', // 支持实时预览
    ) );
    // 添加一个颜色控件
    $wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'header_title_color', array(
        'label'    => __( '标题颜色', 'my-theme' ),
        'section'  => 'colors',
        'settings' => 'header_title_color',
    ) ) );
}
add_action( 'customize_register', 'my_theme_customize_register' );

Successivamente, è necessario applicare gli stili inline all’interno di alcune parti della pagina; tuttavia, un approccio migliore consiste nel passare i valori a un file CSS già pronto per l’uso, in modo da applicare correttamente le impostazioni di colore desiderate.

Riassumendo

Lo sviluppo di temi per WordPress rappresenta una competenza complessiva che integra elementi di design front-end, programmazione in PHP e conoscenze delle API di base di WordPress. Partire dalla comprensione della struttura dei template e della struttura dei file di base, per poi creare header, footer, barre laterali e template di contenuto, è fondamentale in ogni fase del processo.functions.phpI file rappresentano il “centro di controllo” delle funzionalità di un tema: sono responsabili dell’attivazione delle varie funzionalità, dell’aggiunta dei menu di navigazione e delle aree per gli strumenti utilizzabili dall’utente, nonché dell’introduzione sicura di risorse necessarie al funzionamento del tema. Inoltre, grazie all’implementazione di un design responsive e all’integrazione con i tool di personalizzazione forniti da WordPress, è possibile creare temi di livello professionale sia belli che facili da utilizzare. Comprendendo questi passaggi fondamentali, sarai in grado di creare da zero un tema personalizzato per WordPress.

FAQ - Domande frequenti

Quali sono le conoscenze preliminari necessarie per sviluppare un tema WordPress per ###?
Per sviluppare temi per WordPress è necessario padroneggiare le nozioni di base di HTML, CSS e PHP. Conoscere JavaScript è utile per aggiungere funzionalità interattive. Inoltre, è essenziale comprendere le operazioni di base di WordPress, come i concetti di articoli, pagine, menu e widget. La cosa più importante è avere una chiara comprensione del sistema di gerarchia dei template e delle funzioni di base di WordPress (i tag dei template).

Come posso far sì che il mio tema venga incluso nel catalogo ufficiale di WordPress?

Se si desidera che un tema venga incluso nel catalogo ufficiale di temi di WordPress, è necessario rispettare rigorosamente i requisiti di revisione stabiliti dall’azienda. Questi includono la qualità del codice, la sicurezza, la disponibilità di traduzioni, il supporto per l’accessibilità, l’astensione dall’utilizzo di librerie JavaScript compresse, nonché il rispetto della licenza GPL, tra molti altri standard specifici. È necessario inviare il tema su WordPress.org per la revisione; solo dopo l’approvazione esso potrà essere inserito nel catalogo ufficiale.

Quanto codice dovrebbe essere inserito nel file functions.php?

functions.phpI file dovrebbero contenere soltanto codice direttamente correlato all’aspetto e alle funzionalità del tema. Per le logiche funzionali complesse, si consiglia di modularizzarle, suddividendole in più file indipendenti, e di gestirle in modo appropriato.require_onceget_template_part()Introdurre infunctions.phpSì. Questo aiuta a mantenere il codice ordinato e facile da gestire. Se una funzionalità non è correlata all’aspetto visivo del tema, dovrebbe essere considerata per lo sviluppo di un plugin indipendente.

Qual è la differenza tra un sottotema (subtopic) e un tema principale (parent topic)? Quando utilizzarli?

Un “tema padre” (parent theme) è un tema completo e indipendente. I “temi figlio” (child themes), invece, ereditano tutte le funzionalità e gli stili del tema padre e consentono di modificare in modo sicuro i file del tema padre o di aggiungere nuove funzionalità. Il principale vantaggio dell’utilizzo dei temi figlio è che, quando il tema padre viene aggiornato, le personalizzazioni apportate nel tema figlio non vengono sovrascritte. Questo rappresenta il metodo consigliato per personalizzare temi esistenti, soprattutto quelli basati su framework popolari o temi commerciali, in modo da garantire che le modifiche effettuate vengano mantenute anche dopo gli aggiornamenti del tema stesso.