
WordPress è una delle piattaforme più popolari per la creazione di siti web grazie alla sua flessibilità e alla vasta disponibilità di temi e plugin. Tuttavia, chiunque abbia mai voluto personalizzare un tema sa bene che modificare direttamente i file di un tema principale (parent theme) non è una buona idea. Questo perché, al primo aggiornamento del tema, tutte le modifiche andrebbero perse. Qui viene in soccorso il tema child.
Un tema child (child theme), ovvero un tema “figlio”, eredita funzionalità e stile dal tema principale ma e può essere modificato in sicurezza.
In questa guida passo passo vedremo come creare un tema child in WordPress, anche se sei un principiante assoluto.
Che cos’è un tema child in WordPress?
Un tema child è un tema che eredita le caratteristiche, i file e lo stile del tema parent.Le differenze principali sono:
- Il tema child contiene solo i file che desideri modificare.
- Il tema parent resta intatto e può essere aggiornato senza perdere le modifiche.
- Le personalizzazioni sono centralizzate in un tema sicuro e separato.
In pratica, il tema child funziona come un “contenitore” di modifiche, che sostituisce o aggiunge codice rispetto al tema originale.
Perché usare un tema child?
Creare un tema child offre diversi vantaggi:
- Sicurezza negli aggiornamenti
Puoi aggiornare il tema principale senza rischiare di perdere le tue personalizzazioni. - Flessibilità
Puoi modificare CSS, funzioni PHP o template specifici senza compromettere la stabilità del sito. - Apprendimento
È un ottimo modo per imparare come funziona WordPress e come i temi interagiscono con i file. - Backup semplificato
Tutte le modifiche sono raccolte in una cartella separata, facile da esportare e salvare.
Cosa serve per creare un tema child
Prima di iniziare, assicurati di avere:
- Un sito WordPress attivo.
- Un tema parent installato (ad esempio Astra, GeneratePress, Hello Elementor, ecc.).
- Accesso al file manager del tuo hosting o un client FTP (come FileZilla).
- Un editor di testo (come VS Code o Sublime Text).
Passo 1 – Creare la cartella del tema child
Il primo passo è creare una cartella per il tuo tema child.
- Vai nella directory dei temi:
wp-content/themes/
- Crea una nuova cartella con un nome chiaro, ad esempio:
astra-child
Importante: il nome della cartella deve essere tutto in minuscolo e senza spazi.
Passo 2 – Creare il file style.css
Ogni tema WordPress necessita di un file style.css.Nel tema child, questo file serve per dichiarare il tema e includere gli stili personalizzati.
Crea un file chiamato style.css dentro la cartella del tema child e incolla questo codice:
/*
Theme Name: Astra Child
Theme URI: https://esempio.com/astra-child
Description: Tema child per Astra
Author: Il tuo nome
Author URI: https://esempio.com
Template: astra
Version: 1.0.0
*/
/* Qui puoi inserire il tuo CSS personalizzato */
Spiegazione dei campi:
- Theme Name → Il nome che comparirà nella bacheca di WordPress.
- Template → Deve corrispondere esattamente al nome della cartella del tema parent (
astra
in questo esempio). - Gli altri campi sono opzionali ma consigliati.
Passo 3 – Creare il file functions.php
Ora dobbiamo assicurarci che il tema child carichi anche gli stili del tema parent. Per farlo, creiamo un file functions.php nella cartella del child theme.
Inserisci questo codice:
<?php
function astra_child_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') );
}
add_action( 'wp_enqueue_scripts', 'astra_child_enqueue_styles' );
Questo codice dice a WordPress di:
- Caricare prima lo stile del tema parent.
- Caricare poi lo stile del child, in modo che le tue modifiche abbiano la priorità.
Passo 4 – Attivare il tema child
Ora che hai creato i file principali, accedi alla Bacheca di WordPress:
- Vai su Aspetto → Temi.
- Dovresti vedere comparire il nuovo tema Astra Child (o il nome che hai scelto).
- Clicca su Attiva.
Se tutto è stato fatto correttamente, il tuo sito userà il tema child senza differenze visibili rispetto al parent.
Passo 5 – Personalizzare il tema child
Ora che il tema child è attivo, puoi iniziare a personalizzarlo in sicurezza. Alcuni esempi:
1. Aggiungere CSS personalizzato
Puoi scrivere codice CSS nel file style.css per modificare colori, font o layout.Esempio:
body {
background-color: #f9f9f9;
}
h1, h2, h3 {
font-family: 'Roboto', sans-serif;
color: #333;
}
2. Sovrascrivere i file del parent
Se vuoi modificare un template del tema principale (ad esempio header.php), copia quel file dal tema parent al tema child e poi modificalo. WordPress darà priorità alla versione del child.
3. Aggiungere funzioni personalizzate
Nel file functions.php puoi aggiungere funzioni PHP senza toccare il parent.Esempio: aggiungere un link extra al menu di login.
function custom_footer_text() {
echo '<p>© ' . date('Y') . ' - Tutti i diritti riservati</p>';
}
add_action('wp_footer', 'custom_footer_text');
Passo 6 – Buone pratiche
Per usare correttamente un tema child, tieni a mente queste regole:
- Mantieni il parent aggiornato: gli update del tema parent sono fondamentali per la sicurezza.
- Non copiare file inutili: aggiungi solo i file che vuoi modificare.
- Usa i commenti: annota le modifiche nel tuo CSS o PHP per ricordare cosa hai cambiato.
- Testa prima in staging: se possibile, prova le modifiche su un sito di test prima di applicarle in produzione.
Errori comuni da evitare
- Scrivere un nome sbagliato nel campo Template del
style.css
. - Dimenticare di caricare lo stile del parent nel
functions.php
. - Modificare i file direttamente nel tema parent.
- Usare spazi o caratteri speciali nel nome della cartella del tema child.
Alternative al tema child
Se vuoi personalizzare solo piccole parti del tuo sito senza creare un tema child, puoi valutare altre soluzioni:
- CSS personalizzato da Customizer → utile per piccole modifiche di stile.
- Plugin → Child Theme Configurator
- Plugin di snippet PHP → come Code Snippets, per aggiungere funzioni senza modificare
functions.php
. - Theme Builder → plugin come Elementor Pro o Divi permettono di creare template personalizzati senza codice.
Tuttavia, per modifiche più profonde e professionali, il tema child resta la scelta migliore.
Ottimizzare il tema: la base per un sito WordPress solido
Creare un tema child WordPress non è complicato e ti permette di personalizzare il tuo sito senza rischiare di perdere tutto a ogni aggiornamento del tema principale.
Con pochi file (style.css e functions.php) puoi costruire una base solida per tutte le tue modifiche. Da lì, hai la libertà di sperimentare con CSS, PHP e template, sapendo che il tema parent rimane intatto e aggiornabile.
Se vuoi imparare davvero a conoscere WordPress e creare siti professionali, padroneggiare i child theme è un passo fondamentale per costruire progetti sicuri, duraturi e facili da mantenere.