# CLAUDE.md — [indirizzo-del-sito.it] · piccolo progetto WordPress

<!-- ─────────────────────────────────────────────────────────────────────────
  PROFILO C · un piccolo progetto WordPress: la cartella sul TUO computer che
  tiene i testi, gli script e le note di un sito che vive su un hosting.
  WordPress non sta qui: da qui ci si parla, e solo per creare bozze.
  Il caso di riferimento è la pipeline del blog del capitolo 6.2.

  COME SI USA
  1. Copia questo file nella radice della cartella del progetto, col nome
     esatto CLAUDE.md.
  2. Sostituisci tutti i segnaposto [fra parentesi quadre].
  3. Cancella le note come questa: Code legge il file intero, commenti
     compresi, e ogni riga in più toglie peso alle altre.

  Prima di collegare qualsiasi cosa servono le tre fondamenta del 6.2: un
  utente dedicato col ruolo minimo, la sua password delle applicazioni, e un
  file .env fuori da ogni repository. Le credenziali non si scrivono qui.
───────────────────────────────────────────────────────────────────────────── -->

## Chi sono e cosa fa il progetto

<!-- Compilato — Rosa Brunetti, Cantina Brunetti, Lapio (AV), capitolo 6.2:
     «Questa cartella tiene i testi del blog della cantina, lo script che li
     carica come bozze e le note del sito. Ogni lunedì leggo le bozze nel
     pannello, correggo e pubblico io.» -->

Sono [NOME], [RUOLO] di [ATTIVITÀ] a [CITTÀ]. Questa cartella tiene i testi, gli
script e le note del sito [indirizzo-del-sito.it].
WordPress **non è qui**: vive sull'hosting. Da questa cartella si parla col sito
solo attraverso la REST API, e solo per creare bozze.
Il ciclo è: [ogni lunedì] leggo le bozze nel pannello, correggo, pubblico io.

## Dove stanno le cose

- `contenuti/` — articoli e pagine in Markdown, una sottocartella per anno.
- `guida-stile.md` — le regole di scrittura del sito, numerate. Ogni testo si
  giudica contro questa prima di essere consegnato.
- `script/` — gli script che parlano col sito.
- `note-sito.md` — tema, plugin installati, chi ha le chiavi, dove sono i
  backup e ogni quanto girano.
- `export/` — quello che scarico dal pannello. Sola lettura.
- `[_quarantena/]` — testi e file che sembrano da buttare: aspettano me.
- `.env` — utente e password delle applicazioni. Vedi il blocco dei divieti.

## Regole di stile e formato

<!-- Il rimando alla guida di stile, invece della copia delle regole dentro
     questo file, è la stessa divisione del 4.4: qui le regole stabili, nei
     file di lavoro il contenuto che cambia. -->

- La guida di stile è `guida-stile.md` e vince sempre. Se un testo la viola,
  dimmelo citando il numero della regola. Non riscrivere la regola.
- Il contenuto non si inventa. Numeri, prezzi, date, orari, nomi di persone e
  aneddoti li fornisco io: se mancano, chiedimeli e fermati. Un dato falso
  pubblicato resta online col mio nome sopra.
- [I prezzi si dichiarano indicativi, col mese: «20 € a persona (indicativo,
  luglio 2026)».]
- Meta title entro [60] caratteri, meta description entro [155]. Dichiara il
  conteggio, ma dillo chiaro che va ricontato a mano prima di incollarlo: il
  conteggio dichiarato non è una prova.
- Lo slug si decide prima della pubblicazione e non si cambia più dopo.
- Le date che tornano dalla REST API sono in UTC. Quando mi mostri un orario,
  convertilo in ora italiana e scrivi che l'hai convertito.
- Da Markdown si esce con HTML pulito: niente stili in linea, niente classi
  inventate, niente commenti di conversione.

## Cosa non toccare mai

<!-- Il blocco che pesa di più in questo profilo: qui in gioco c'è un sito
     pubblico, e gli errori li leggono i clienti. -->

- **`"status":"draft"` è fisso nel codice.** Nessuno script scrive `publish`,
  nessun parametro lo rende opzionale, nessuna scorciatoia «tanto è pronto».
  Pubblicare è un click mio, nel pannello, dopo aver letto.
- Niente chiamate che eliminano o modificano quello che esiste già: nessun
  DELETE, nessun aggiornamento di articoli pubblicati, nessuna scrittura su
  utenti, ruoli, impostazioni, plugin o tema.
- Il database non si tocca da questa cartella. Mai, per nessun motivo.
- `.env` si usa, non si legge ad alta voce: mai stampare una credenziale a
  schermo, mai copiarla in un altro file, mai incollarla in un prompt o in un
  messaggio. Se un comando la mostrerebbe, riscrivi il comando.
- Si usa solo l'utente dedicato col ruolo minimo, mai il mio amministratore.
- Backup prima di ogni intervento sul sito — e prima si verifica che il backup
  esista davvero e sia recente, non che sia previsto.

## Come si lavora in questa cartella

<!-- Le regole di sicurezza del capitolo 4.6, in forma verificabile. Quando
     poterai il file, questo è il blocco che NON si tocca. -->

- **Prima sul sito di prova, poi su quello vero.** Sempre, anche per le
  modifiche da due minuti.
- **Campione prima del lotto.** Un articolo prima del calendario intero, una
  pagina prima di venti, dieci righe di un export prima di tutte: mi mostri il
  risultato e ti fermi.
- **Le tre verifiche a ogni caricamento**, e la corsa non è finita finché non
  tornano tutte e tre: (a) la bozza compare nell'elenco bozze autenticato;
  (b) la stessa richiesta senza credenziali risponde 401; (c) il titolo non
  compare da nessuna parte sul sito pubblico. Se una salta, fermati.
- **Un aggiornamento alla volta:** un plugin, poi si guarda il sito, poi il
  successivo. Se qualcosa si rompe, il colpevole è l'ultima mossa.
- **Risposta inattesa = stop.** Un codice diverso da quello previsto — un 200
  dove aspettavi un 201 — non si interpreta: mi mostri la risposta intera.
- **Se l'indirizzo non è `https`, fermati** e dimmelo: la password delle
  applicazioni in chiaro non viene accettata, e la richiesta diventa anonima.
- **Si lavora su copia.** I testi già pubblicati non si modificano sul posto:
  se ne fa una versione nuova in `contenuti/`, e il vecchio resta.
- **Mai eliminare.** Né file qui, né contenuti là. Quello che non serve più si
  sposta in `[_quarantena/]` e decido io.
- **Piano prima dei lavori grossi.** Prima il piano — quali file, quali
  chiamate, cosa succede se una fallisce a metà — poi si esegue, dopo il mio
  ok. In Code è la modalità `plan`.
- **Riepilogo a fine lavoro:** file toccati, chiamate fatte, esito delle tre
  verifiche, cosa devo controllare io nel pannello.
- **L'ultima parola è mia.** Tu produci bozze, io approvo e pubblico. Il giorno
  in cui mi accorgo che approvo senza leggere, la pipeline si ferma.

## Riga di controllo (da tenere i primi giorni, poi cancellare)

<!-- Serve solo a verificare che il file venga letto davvero. Le tre prove sono
     nel LEGGIMI del kit. Passate quelle, cancella queste due righe. -->

- All'inizio della prima risposta di ogni sessione scrivi una riga sola:
  «Regole di progetto caricate: [indirizzo-del-sito.it]». Poi rispondi normalmente.
