llms.txt per WordPress: Come Rendere il Tuo Sito Leggibile dall’AI [2026]

5 settembre 202611 minSEO

Il file llms.txt è una proposta di standard per rendere i siti web leggibili dai modelli di intelligenza artificiale. Posizionato alla radice del dominio (es. https://example.com/llms.txt), fornisce una mappa strutturata in formato Markdown dei contenuti più importanti del sito, aiutando ChatGPT, Perplexity, Claude e altri LLM a trovare e citare le informazioni corrette. In questa guida vediamo come implementarlo su WordPress, perché è complementare a robots.txt e sitemap.xml, e quali plugin usare per generarlo automaticamente.

TL;DR: Cos’è llms.txt e perché ti riguarda

llms.txt è stato proposto da Jeremy Howard (Answer.AI / FastAI) il 3 settembre 2024 come soluzione a un problema reale: le finestre di contesto degli LLM sono troppo piccole per digerire un sito web intero, e l’HTML è pieno di navigazione, ads e JavaScript che confondono i modelli. Un file llms.txt risolve questo offrendo un indice curato dei contenuti rilevanti in formato Markdown.

I dati di adozione al giugno 2026 mostrano che 737 siti sui top 10.000 (7,4%) pubblicano un file llms.txt reale, secondo la ricerca di Chris Humphrey su Majestic Million. Tra questi: Anthropic, Stripe, Cursor, Cloudflare, Vercel, Mintlify, Supabase. Adozioni che sembrano poche ma crescono rapidamente.

Per le agenzie che gestiscono siti WordPress clienti, pubblicare un file llms.txt ha un costo quasi zero e un’opzionalità reale: non sai quali AI lo leggeranno domani, ma sai che se lo faranno il tuo sito sarà pronto.

Differenza tra llms.txt, robots.txt e sitemap.xml

I tre file collaborano ma hanno scopi diversi. Capirli separatamente è essenziale prima di implementarli.

File Scopo Chi lo legge Formato
robots.txt Controlla quali crawler possono accedere e a quali path Googlebot, GPTBot, ClaudeBot, PerplexityBot Plain text con direttive User-agent / Disallow
sitemap.xml Elenca tutte le URL del sito per l’indicizzazione Motori di ricerca tradizionali XML
llms.txt Offre una mappa curata dei contenuti più importanti in linguaggio naturale LLM, agenti AI, IDE assistant (Cursor, Continue) Markdown

La differenza chiave: robots.txt controlla l’accesso, sitemap.xml enumera, llms.txt curato. Un sitemap elenca 500 URL senza contesto; un llms.txt ne seleziona 20 con una descrizione per ciascuno. È la differenza tra dare a qualcuno l’elenco telefonico e dargli una breve guida alle persone più importanti da contattare.

Il formato llms.txt: specifica tecnica

La specifica è volutamente semplice. L’unico elemento obbligatorio è un H1 con il nome del progetto o sito. Tutto il resto è opzionale ma segue un ordine fisso:

# Nome Sito

> Breve descrizione del progetto in una o due frasi che catturano l'essenza.

Paragrafi o liste con informazioni aggiuntive sul progetto.

## Documentazione

- [Titolo link](https://example.com/doc1.md): Descrizione opzionale
- [Altro link](https://example.com/doc2.md): Cosa copre questa pagina

## Optional

- [Risorsa secondaria](https://example.com/extra.md): Contenuto skippabile

Convenzioni importanti:

  • Link in Markdown, non HTML — il punto è renderlo facile da parsare per un LLM
  • Linka versioni .md delle pagine quando possibile (es. pagina.html.md)
  • La sezione ## Optional ha significato speciale: gli agenti con poco contesto possono saltarla
  • Sii spietato nella curazione: se non vorresti che un LLM citasse una pagina, non listarla

La famiglia completa: llms.txt, llms-full.txt, llms-ctx.txt

La proposta originale definiva un solo file. Gli implementatori ne hanno aggiunti altri due:

File Contenuto Quando usarlo
/llms.txt Indice curato — H1, summary, sezioni di link Sempre. È la mappa.
/llms-full.txt Contenuto completo di ogni pagina linkata, concatenato in Markdown Quando vuoi che un modello ingesti tutta la documentazione in un colpo
/llms-ctx.txt Versione intermedia con contesto espanso ma senza link opzionali Per contesti medi (< 200K token)

Come implementare llms.txt su WordPress: 3 metodi a confronto

WordPress non serve file statici alla radice del dominio in modo nativo senza un plugin o una regola di rewrite. Ecco tre approcci dal più semplice al più avanzato.

Metodo 1: Plugin WordPress (consigliato per la maggior parte)

Al 2026 esistono almeno tre plugin nel repository WordPress.org che generano e mantengono un file llms.txt automaticamente:

  • Website LLMs.txt (wordpress.org/plugins/website-llms-txt/) — Generazione automatica con integrazione Yoast SEO, Rank Math, SEOPress e AIOSEO. È il più completo per chi usa già un plugin SEO.
  • Project LLMs.txt (wordpress.org/plugins/project-llmstxt/) — Più minimale, genera il file dalla struttura dei contenuti esistente.
  • WP-LLMS (github.com/xantus-ai/wp-llms-plugin) — Open source con audit AI-readiness integrato, genera anche varianti .md per singole pagine. Richiede WordPress 6.0+ e PHP 8.1+.

Nella nostra esperienza con siti clienti, il plugin Website LLMs.txt è il punto di partenza più rapido: installa, attiva, configura le sezioni da includere e il file è disponibile a /llms.txt senza toccare il server.

Metodo 2: Rewrite rule in Nginx o Apache

Se preferisci non installare un plugin e hai accesso al server, puoi servire un file llms.txt statico tramite una rewrite rule. Per Nginx:

location = /llms.txt {
    alias /var/www/sito/llms.txt;
    default_type text/markdown;
    add_header Cache-Control "public, max-age=3600";
}

Per Apache (nel virtualhost o .htaccess):

<Files "llms.txt">
    ForceType text/markdown
    Header set Cache-Control "public, max-age=3600"
</Files>

Questa soluzione è la più performante perché il file viene servito direttamente dal web server senza passare per PHP. Richiede però manutenzione manuale del contenuto.

Metodo 3: Endpoint REST API personalizzato

Per agenzie che vogliono generare il file dinamicamente dai contenuti, un endpoint REST API è la soluzione più flessibile. Ecco un esempio in PHP da aggiungere al functions.php del tema o in un mu-plugin:

add_action('rest_api_init', function() {
    register_rest_route('custom/v1', '/llms-txt', [
        'methods'  => 'GET',
        'callback' => 'agencypilot_generate_llms_txt',
        'permission_callback' => '__return_true',
    ]);
});

function agencypilot_generate_llms_txt(WP_REST_Request $request) {
    $lines = [];
    $lines[] = '# ' . get_bloginfo('name');
    $lines[] = '';
    $lines[] = '> ' . get_bloginfo('description');
    $lines[] = '';

    // Sezione documentazione
    $lines[] = '## Documentazione';
    $pages = get_pages(['sort_column' => 'post_modified', 'sort_order' => 'DESC', 'number' => 10]);
    foreach ($pages as $page) {
        $lines[] = '- [' . $page->post_title . '](' . get_permalink($page->ID) . '): ' . wp_strip_all_tags($page->post_excerpt ?: wp_trim_words($page->post_content, 20));
    }
    $lines[] = '';

    // Sezione blog
    $lines[] = '## Articoli';
    $posts = get_posts(['numberposts' => 15, 'post_status' => 'publish']);
    foreach ($posts as $post) {
        $lines[] = '- [' . $post->post_title . '](' . get_permalink($post->ID) . '): ' . wp_strip_all_tags(get_the_excerpt($post));
    }

    return new WP_REST_Response(implode("\n", $lines), 200, [
        'Content-Type' => 'text/markdown; charset=utf-8',
    ]);
}

Questo endpoint genererà dinamicamente il file a /wp-json/custom/v1/llms-txt. Per servirlo a /llms.txt, aggiungi una rewrite rule in Nginx:

location = /llms.txt {
    proxy_pass http://127.0.0.1:8080/wp-json/custom/v1/llms-txt;
}

Esempio reale: file llms.txt per un sito agenzia

Ecco un template concreto per un’agenzia web che gestisce siti WordPress, ispirato ai file pubblicati da Anthropic e Stripe:

# AgencyPilot

> Piattaforma di gestione WordPress per agenzie web. Monitoraggio, automazione, sicurezza e reporting per 50+ siti clienti da un'unica dashboard.

AgencyPilot aiuta le agenzie a gestire aggiornamenti, backup, sicurezza e performance di siti WordPress multipli con automazione AI.

## Documentazione

- [Gestione siti WordPress per agenzie](https://agencypilot.it/blog/gestione-siti-wordpress-agenzie-guida-completa): Guida completa alla gestione multi-sito
- [Sicurezza WordPress per agenzie](https://agencypilot.it/blog/sicurezza-wordpress-guida-agenzie): Hardening, monitoring e recovery
- [Performance WordPress Core Web Vitals](https://agencypilot.it/blog/performance-wordpress-core-web-vitals-agenzie): Ottimizzazione LCP, CLS, INP
- [Backup WordPress disaster recovery](https://agencypilot.it/blog/backup-wordpress-disaster-recovery-agenzie): Strategia 3-2-1 con automazione
- [Automatizzare gestione WordPress](https://agencypilot.it/blog/automatizzare-gestione-wordpress-scalare-agenzia): Claude API e workflow AI

## Confronti

- [ManageWP vs MainWP vs AgencyPilot](https://agencypilot.it/blog/managewp-mainwp-agencypilot-confronto): Confronto reale con dati 2026
- [WordPress REST API endpoint personalizzati](https://agencypilot.it/blog/wordpress-rest-api-endpoint-personalizzati-guida): Guida completa agli endpoint custom

## Optional

- [Accessibilità WordPress per PA](https://agencypilot.it/blog/accessibilita-wordpress-pubblica-amministrazione): WCAG 2.2 e conformità AGID

Errori comuni da evitare

Nella nostra esperienza implementando llms.txt su oltre 30 siti clienti, questi sono gli errori più frequenti:

  1. Soft 404 — Il server restituisce 200 OK ma serve l’homepage in HTML invece del file Markdown. Il 30% dei falsi positivi nell’adozione è dovuto a questo, secondo l’analisi di Chris Humphrey. Verifica con curl -I https://example.com/llms.txt che il Content-Type sia text/markdown.
  2. Elencare tutto — Un llms.txt con 500 link è inutile quanto un sitemap. La curazione è il valore. Sotto 50 link è il range ideale.
  3. Dimenticare la sezione Optional — È l’unico costrutto semantico speciale della specifica. Usala per contenuto secondario che può essere saltato quando il contesto è limitato.
  4. Non aggiornare il file — Un llms.txt che linka a pagine rimosse o outdated è peggio di non averlo. Automatizza l’aggiornamento o schedulalo mensilmente.
  5. Bloccare i crawler AI in robots.txt — Ha senso pubblicare llms.txt ma bloccare GPTBot in robots.txt. Verifica che il tuo robots.txt permetta ai crawler AI principali (GPTBot, ClaudeBot, PerplexityBot, Google-Extended) se l’obiettivo è la citazione AI.

Verificare la configurazione con GEO Optimizer

Se gestisci più siti WordPress, verificare manualmente ogni llms.txt è impraticabile. GEO Optimizer, il tool open source che abbiamo sviluppato proprio per questo, include un comando che genera e valida il file llms.txt partendo dal sitemap:

# Genera un file llms.txt dal sitemap
geo llms https://agencypilot.it/sitemap.xml --lang it

# Verifica che il file sia corretto
geo audit https://agencypilot.it/llms.txt --lang it

L’audit controlla: formato Markdown valido, presenza H1, summary, sezioni, link funzionanti, e compatibilità con la specifica. Per una strategia completa di gestione WordPress, integrare la generazione di llms.txt nel workflow di deploy è il modo più efficace.

llms.txt e SEO: cosa dicono i dati

La domanda cruciale: llms.txt migliora le citazioni AI? I dati disponibili al 2026 sono onesti:

  • Uno studio di SERanking su 300.000 domini (novembre 2025) non ha trovato un aumento statisticamente significativo di citazioni AI nei siti che pubblicano llms.txt rispetto a quelli che non lo fanno.
  • I crawler dei principali LLM (GPTBot, ClaudeBot, Google-Extended) non richiedono il file in volumi significativi, secondo l’analisi dei log server.
  • Chi usa davvero il file sono gli IDE agent (Cursor, Continue, Cline) e alcune integrazioni MCP.

Allora perché pubblicarlo? Tre motivi pratici:

  1. Costo quasi zero — Un file Markdown statico, 30 minuti di lavoro.
  2. Opzionalità — Non sai quali AI lo leggeranno domani. Il costo di non averlo quando servirà è superiore al costo di pubblicarlo oggi.
  3. Disciplina — Scrivere un buon llms.txt ti costringe a fare l’inventario dei tuoi contenuti migliori. Questo esercizio ha valore indipendentemente dall’adozione AI.

robots.txt per AI bot: il companion essenziale

llms.txt è inutile se il tuo robots.txt blocca i crawler AI. Verifica che il tuo robots.txt permetta l’accesso ai principali bot AI. Ecco un template:

# AI Crawlers - Consenti accesso
User-agent: GPTBot
Allow: /

User-agent: ChatGPT-User
Allow: /

User-agent: ClaudeBot
Allow: /

User-agent: PerplexityBot
Allow: /

User-agent: Google-Extended
Allow: /

# Blocca accessi non necessari
User-agent: *
Disallow: /wp-admin/
Disallow: /wp-login.php
Allow: /wp-content/uploads/

Sitemap: https://example.com/sitemap.xml

Per una guida completa a robots.txt per AI bot, vedi il nostro articolo dedicato su robots.txt per AI bot.

FAQ — Domande frequenti su llms.txt per WordPress

llms.txt è uno standard ufficiale?

No, è una proposta di standard di Jeremy Howard (Answer.AI) pubblicata a settembre 2024. Nessun motore di ricerca o AI platform ha annunciato supporto ufficiale, ma diversi tool e aziende lo adottano volontariamente. Al giugno 2026, il 7,4% dei top 10.000 siti pubblica un file llms.txt reale.

llms.txt sostituisce robots.txt?

No. robots.txt controlla l’accesso dei crawler, llms.txt fornisce un indice curato dei contenuti. Sono complementari. Il tuo robots.txt deve permettere i crawler AI prima che llms.txt abbia senso.

Quanti link inserire in llms.txt?

Meno di 50, idealmente sotto 30. Il valore del file sta nella curazione, non nella completezza. Se elenchi tutto, stai facendo un sitemap, non un llms.txt.

Quali plugin WordPress generano llms.txt?

I principali sono Website LLMs.txt (con integrazione Yoast, Rank Math, SEOPress, AIOSEO), Project LLMs.txt, e WP-LLMS di Xantus AI. Tra i plugin SEO generalisti, Yoast ha generato 59 file sui top 10.000 siti, AIOSEO 22, Rank Math 8.

llms.txt migliora il ranking Google?

Non ci sono evidenze che Google utilizzi llms.txt per il ranking. Google ha il proprio sistema di indicizzazione e AI Overviews che non dipende da questo file. llms.txt è pensato per LLM di terze parti, non per il search algorithm di Google.

Quanto spesso aggiornare il file?

Ad ogni pubblicazione di contenuto rilevante o almeno mensilmente. Se usi un plugin che lo genera dinamicamente, il problema non si pone. Per file statici, schedula un aggiornamento nel tuo checklist manutenzione WordPress mensile.

Gestisci i siti WordPress dei tuoi clienti?

AgencyPilot ti dà report AI, uptime monitoring, backup e portale clienti in un’unica dashboard. Gratis per 3 siti.

Prova gratis
Leggi anche
Tutti gli articoli
Tutti gli articoli