Cos’è llms.txt e Perché il Tuo Sito WordPress Ne Ha Bisogno
Il file llms.txt è un indice strutturato del tuo sito, scritto per i modelli AI. Pensalo come una sitemap.xml, ma invece di aiutare Googlebot a trovare le pagine, aiuta ChatGPT, Perplexity e Claude a capire cosa contiene il tuo sito e dove trovare le informazioni migliori.
La proposta nasce da Jeremy Howard, fondatore di fast.ai e figura centrale nel mondo deep learning. Il formato è semplice: un file Markdown con intestazione H1, una descrizione in blockquote, sezioni H2 per categoria e link alle pagine chiave.
WordPress non lo supporta nativamente. Non c’è un plugin ufficiale. Non c’è una voce nel menu Impostazioni. Ma aggiungerlo richiede meno di 10 minuti e può fare la differenza tra essere citati dall’AI o restare invisibili.
Se vuoi capire il contesto più ampio, leggi la nostra guida completa alla Generative Engine Optimization (GEO).
Il Formato llms.txt: Struttura e Regole
Il file va nella root del tuo dominio: https://tuosito.com/llms.txt. Il formato è Markdown puro.
Ecco la struttura:
# Nome del Tuo Sito
> Breve descrizione di cosa offre il sito. Una o due frasi che spiegano
> il focus principale e il valore per l'utente.
## Articoli
- [Titolo Articolo Uno](https://tuosito.com/blog/articolo-uno): Breve descrizione del contenuto
- [Titolo Articolo Due](https://tuosito.com/blog/articolo-due): Di cosa parla
## Guide
- [Guida Completa a X](https://tuosito.com/guide/x): Tutorial approfondito su X
- [Come Fare Y](https://tuosito.com/guide/y): Procedura step-by-step
## Strumenti
- [Tool Principale](https://tuosito.com/tool): Cosa fa e per chi è
## Documentazione
- [API Reference](https://tuosito.com/docs/api): Documentazione tecnica
- [FAQ](https://tuosito.com/faq): Domande frequenti
Le regole chiave:
- H1 obbligatorio: il nome del sito. Uno solo, in cima al file
- Blockquote obbligatorio: la descrizione dopo l’H1. Deve spiegare cosa fa il sito in 1-2 frasi
- Sezioni H2: categorie di contenuto. Usa nomi chiari (Articoli, Guide, Strumenti, non “Risorse varie”)
- Link con descrizione: ogni link ha un titolo descrittivo e opzionalmente un testo dopo i due punti
- Niente HTML: Markdown puro. Niente tag, niente CSS, niente JavaScript
WordPress: 3 Modi per Aggiungere llms.txt
Metodo 1: file statico (5 minuti)
Il modo più rapido. Crea un file llms.txt e caricalo nella root del tuo sito WordPress via FTP, file manager del hosting, o WP File Manager plugin.
Il file deve finire in /var/www/html/llms.txt (o qualsiasi sia la root del tuo WordPress). Verifica che sia accessibile visitando https://tuosito.com/llms.txt nel browser.
Pro: funziona subito, zero dipendenze.
Contro: devi aggiornarlo manualmente ogni volta che pubblichi contenuto nuovo.
Metodo 2: generazione automatica con GEO Optimizer (10 minuti)
GEO Optimizer legge la sitemap del tuo WordPress e genera il llms.txt automaticamente con tutte le pagine organizzate per categoria.
# Installa (se non l'hai già fatto)
pip install geo-optimizer-skill
# Genera llms.txt dalla sitemap
geo llms --base-url https://tuosito.com --output ./llms.txt
Il comando analizza la sitemap XML, estrae le pagine, le organizza in sezioni H2 basandosi sulla struttura URL e crea un file Markdown completo. Poi lo carichi nella root del sito.
Pro: include tutte le pagine, struttura automatica.
Contro: serve Python e accesso al server per caricare il file.
Metodo 3: generazione dinamica con PHP (15 minuti)
Per chi vuole che llms.txt si aggiorni automaticamente a ogni nuovo post. Aggiungi questo codice al functions.php del tuo tema (o in un mu-plugin):
add_action('init', function() {
if (isset($_SERVER['REQUEST_URI']) && $_SERVER['REQUEST_URI'] === '/llms.txt') {
header('Content-Type: text/plain; charset=utf-8');
$site_name = get_bloginfo('name');
$site_desc = get_bloginfo('description');
echo "# {$site_name}\n\n";
echo "> {$site_desc}\n\n";
// Articoli del blog
echo "## Articoli\n";
$posts = get_posts([
'numberposts' => 50,
'post_status' => 'publish',
'orderby' => 'date',
'order' => 'DESC'
]);
foreach ($posts as $post) {
$url = get_permalink($post);
$title = $post->post_title;
$excerpt = wp_trim_words($post->post_excerpt ?: $post->post_content, 15, '...');
echo "- [{$title}]({$url}): {$excerpt}\n";
}
// Pagine statiche
echo "\n## Pagine\n";
$pages = get_pages(['sort_column' => 'menu_order']);
foreach ($pages as $page) {
$url = get_permalink($page);
echo "- [{$page->post_title}]({$url})\n";
}
exit;
}
});
Questo codice intercetta le richieste a /llms.txt e genera il file dinamicamente dai post e pagine pubblicati. Ogni volta che pubblichi un articolo nuovo, llms.txt si aggiorna da solo.
Pro: sempre aggiornato, zero manutenzione.
Contro: richiede familiarità con PHP e il functions.php.
Ottimizzare il Contenuto di llms.txt
Avere il file non basta. Il contenuto conta.
Scegli le pagine giuste
Non buttare dentro tutte le 500 pagine del sito. L’AI non le leggerà tutte. Seleziona le 30-50 più importanti:
- Gli articoli pillar di ogni cluster tematico
- Le landing page dei prodotti/servizi principali
- La documentazione tecnica
- Le guide how-to più complete
- Le pagine con dati unici (case study, benchmark, report)
Escludi: pagine tag, archivi per data, pagine di login, pagine legali (a meno che non siano rilevanti per il tuo settore).
Scrivi descrizioni utili
Ogni link può avere una descrizione dopo i due punti. Usala. L’AI usa queste descrizioni per decidere quale pagina visitare.
❌ - [Articolo 1](https://tuosito.com/articolo-1)
✅ - [Sicurezza WordPress per Agenzie](https://tuosito.com/blog/sicurezza-wordpress): Guida completa con 25 tecniche di hardening testate su 30+ siti. Include procedura recovery per siti hackerati.
Organizza per rilevanza, non per data
L’AI non si interessa all’ordine cronologico. Metti prima i contenuti più importanti e completi, poi quelli di supporto. Le sezioni H2 devono riflettere i tuoi cluster tematici.
Come Verificare che Funziona
Dopo aver caricato il file, tre controlli:
- Accessibilità: visita
https://tuosito.com/llms.txt. Deve mostrare il contenuto Markdown. Se vedi un 404, il file non è nella posizione corretta - Audit con GEO Optimizer: lancia
geo audit --url https://tuosito.com. La sezione “LLMS.TXT” ti dice se il file è trovato, se ha la struttura corretta (H1, blockquote, H2, link) e quante parole contiene - Log del server: dopo qualche giorno, cerca negli access log le richieste a
/llms.txt. Se vedi user-agent come GPTBot, ClaudeBot o PerplexityBot, i bot AI stanno leggendo il tuo indice
Quanto ci vuole perché i bot lo trovino? Dipende. Se il tuo sito è già crawlato regolarmente (controlla nei log), i bot scopriranno llms.txt al prossimo passaggio. Per siti nuovi, può servire qualche settimana.
llms.txt e robots.txt: Lavorano Insieme
Una confusione comune: llms.txt non sostituisce robots.txt. Fanno cose diverse.
| File | Dice ai bot | Formato |
|---|---|---|
| robots.txt | Dove possono e dove NON possono andare | Direttive Allow/Disallow |
| llms.txt | Dove trovare le informazioni MIGLIORI | Markdown con link annotati |
| sitemap.xml | Tutte le pagine che esistono | XML con URL e date |
Servono tutti e tre. Il robots.txt controlla l’accesso. La sitemap elenca tutto. Il llms.txt guida l’AI verso i contenuti più rilevanti.
Un errore che vediamo spesso: il llms.txt è perfetto ma il robots.txt blocca i bot AI. Risultato: i bot non possono nemmeno arrivare al llms.txt. Controlla sempre entrambi. Il paper Princeton conferma che l’accesso dei bot è il prerequisito per qualsiasi ottimizzazione GEO.
Case Study: llms.txt di CalcFast
L’audit di CalcFast con GEO Optimizer ha assegnato 20/20 al llms.txt. Score perfetto. Ecco perché:
- H1 presente con il nome del sito
- Blockquote con descrizione chiara
- 6 sezioni H2 (Tools, Articles, Docs, e altre)
- 46 link a pagine del sito, tutti con titoli descrittivi
- ~559 parole di contenuto
Confronta con il robots.txt dello stesso sito: 0/20 (file mancante). Il llms.txt da solo non basta se i bot non possono accedere al sito. Ma quando entrambi sono in ordine, il sito è pronto per le citazioni AI.
Errori Comuni da Evitare
- File vuoto o con solo H1: un llms.txt senza link è inutile. Deve contenere almeno 10-15 link a pagine reali
- Link rotti: se un link nel llms.txt porta a un 404, peggiori la tua credibilità con l’AI
- Troppo contenuto: non incollare l’intero articolo nel llms.txt. Solo titolo, link e breve descrizione. Il file è un indice, non un archivio
- Formato sbagliato: deve essere Markdown, non HTML. Niente
<a href="...">, usa[testo](url) - Non aggiornarlo: se pubblichi 10 articoli nuovi e il llms.txt punta ancora ai 5 vecchi, stai nascondendo contenuto all’AI
FAQ
llms.txt è uno standard ufficiale?
No, è una proposta. Non è ratificata da nessun ente di standardizzazione. Ma ha trazione nella community AI e i principali bot (GPTBot, ClaudeBot, PerplexityBot) lo cercano attivamente. La situazione è simile a quella di robots.txt nei primi anni: proposta informale che è diventata standard de facto.
Esiste un plugin WordPress per llms.txt?
Al momento di questo articolo (marzo 2026), non esiste un plugin WordPress dedicato nel repository ufficiale. Puoi generarlo con il codice PHP descritto sopra, con GEO Optimizer, o manualmente. È probabile che entro fine 2026 i principali plugin SEO (Yoast, Rank Math) integrino il supporto nativo.
Quante pagine devo includere nel llms.txt?
Tra 20 e 50 per la maggior parte dei siti. Per un blog con 200 articoli, includi i 30-40 più importanti (pillar, guide complete, case study). Per un SaaS, includi le pagine prodotto, la documentazione e i blog post chiave. L’obiettivo è qualità, non quantità.
llms.txt influenza il ranking su Google?
No. Google non usa llms.txt per il ranking tradizionale. Il file è pensato per i motori AI (ChatGPT, Perplexity, Claude, Gemini). Non danneggia il SEO in nessun modo, ma i benefici sono esclusivamente lato GEO.