Lavorare con i contenuti

In questa pagina

Usa l’admin di EmDash per portare una voce dalla prima bozza a una pagina pubblicata. L’editor mantiene le modifiche della bozza separate dalla versione che i visitatori possono vedere, quindi salvare e pubblicare sono due azioni distinte.

Aprire una collezione

Apri /_emdash/admin sul tuo sito e accedi. Seleziona una collezione, come Posts o Pages, nella barra laterale.

La pagina della collezione elenca le sue voci. Da qui puoi:

  • selezionare Add New per creare una voce;
  • cercare per titolo della voce, slug e campi contrassegnati come ricercabili;
  • filtrare per stato di pubblicazione, autore, byline, data e locale;
  • selezionare voci per pubblicarle in blocco, riportarle in bozza o spostarle nel cestino; e
  • aprire Trash per ripristinare o eliminare definitivamente una voce.

I campi e le funzionalità di pubblicazione disponibili nell’editor dipendono dal modello di contenuto della collezione. Ad esempio, una collezione può supportare revisioni, anteprime, tassonomie o la ricerca.

Creare e pubblicare una voce

  1. Seleziona Add New nella pagina della collezione.

  2. Compila i campi obbligatori. Se la collezione ha un campo titolo, EmDash lo usa per suggerire uno slug. Puoi modificare lo slug prima di pubblicare.

  3. Aggiungi il corpo e gli eventuali campi di supporto, come un estratto, un’immagine in evidenza, una byline, categorie o tag.

  4. Seleziona Save. Il primo salvataggio crea la voce come bozza e apre il suo URL permanente dell’editor.

  5. Controlla la bozza. Se la collezione supporta le anteprime, seleziona Preview per vedere la pagina renderizzata prima di pubblicare.

  6. Seleziona Publish now, poi conferma. La bozza salvata diventa la versione live che le query di contenuto pubbliche restituiscono.

La voce ha un ID di contenuto stabile e uno slug separato. L’ID continua a identificare la stessa voce se il suo slug cambia. I template di norma usano l’identificatore rivolto all’URL restituito da getEmDashCollection(); la guida all’interrogazione dei contenuti spiega entrambi i valori.

Scrivere testo ricco

I campi Portable Text offrono un editor a blocchi per titoli, paragrafi, citazioni, elenchi, link, immagini, gallerie, blocchi di codice, tabelle, blocchi HTML e sezioni riutilizzabili. I plugin installati possono aggiungere altri blocchi.

Usa la barra degli strumenti per formattare il testo selezionato. Per inserire un blocco, seleziona il controllo di aggiunta blocco accanto a un paragrafo oppure digita / e cerca un blocco per nome. I blocchi immagine e galleria aprono lo stesso selettore multimediale usato dai campi immagine.

Puoi anche trascinare file immagine nell’editor o incollare un’immagine copiata o uno screenshot. Ogni immagine viene caricata nella Libreria multimediale e compare tra i blocchi circostanti al termine del caricamento. Se un caricamento fallisce, il motivo compare dove sarebbe andata l’immagine.

Quando selezioni un blocco immagine, sopra di esso compare una barra degli strumenti. Usala per sostituire l’immagine, modificarne il testo alternativo, allinearla, aggiungere un link o eliminare il blocco. Il pulsante Alt text viene evidenziato quando l’immagine ha una descrizione, e passandoci sopra viene mostrata la descrizione. Un testo alternativo che sia solo il nome di file di un’immagine della Libreria multimediale non conta. Digita una didascalia nel campo sotto l’immagine e premi Invio per continuare a scrivere sotto di essa. Da un’immagine selezionata, Tab passa alla didascalia e poi alla barra degli strumenti.

Image settings nella barra degli strumenti apre tutte le impostazioni per quell’uso dell’immagine, comprese la dimensione di visualizzazione e un tooltip facoltativo. Edit asset apre lì l’elemento sottostante della Libreria multimediale, dove modificare o sostituire l’asset può influire su altre voci che lo usano. Vedi Libreria multimediale per questa distinzione.

Aggiungere HTML, CSS e JavaScript

Un blocco HTML contiene codice che gli altri blocchi non possono esprimere, come un contenuto incorporato, un modulo di iscrizione o un piccolo widget. Le sue schede sono HTML, CSS, JS e Preview. Ogni scheda di codice è un editor di codice in cui Tab applica il rientro; premi Esc per tornare al testo circostante. Le schede CSS e JS sono facoltative: puoi anche incollare un intero frammento, con i suoi elementi <style> e <script>, nella scheda HTML.

Preview mostra il blocco così come lo renderizza il tuo sito. Quando apri una voce, un blocco che esegue JavaScript attende finché non selezioni Run preview, così uno script difettoso non può bloccare l’editor.

Il menu del blocco imposta il modo in cui il tuo sito lo renderizza:

  • Isolated frame esegue l’HTML, il CSS e il JavaScript del blocco in un frame in sandbox che cresce con il suo contenuto. Il frame non può leggere i cookie, lo storage o le pagine del tuo sito, e gli stili del tuo sito non lo raggiungono. I link relativi vengono risolti a partire dalla radice del tuo sito. Dopo che un visitatore ha fatto clic all’interno del frame, questo può aprire altre pagine nella scheda del visitatore o in una nuova. I nuovi blocchi HTML usano questa modalità, ma i blocchi incollati da un altro sito web o da un’altra scheda del browser no. Non dimensionare il contenuto in base al viewport del frame, ad esempio con height: 100vh: il frame cresce per contenerlo, il che rende di nuovo più alto il contenuto, finché il frame non raggiunge i 20.000 pixel.
  • Inline inserisce l’HTML nella pagina, dove usa gli stili del tuo sito. Il tuo sito mantiene la formattazione del testo, i link, gli elenchi, le tabelle, le immagini e gli iframe, e rimuove il resto del markup, come script, elementi <style>, attributi style, contenuti multimediali e controlli di modulo. Gli iframe di siti diversi da YouTube e Vimeo vengono svuotati. Un blocco inline non ha le schede CSS e JS.

I motori di ricerca potrebbero non considerare il testo all’interno di un frame isolato come parte della pagina. Inserisci il testo importante per la ricerca in paragrafi o in un blocco inline.

Incorporare una pagina di un altro sito

Un blocco iframe mostra una pagina di un altro sito, come un video, una mappa o un modulo. Digita /iframe, poi incolla il codice di incorporamento del sito o un link nella scheda Code. I link di YouTube e Vimeo diventano i rispettivi player, e qualsiasi altro link https viene incorporato così com’è. Preview mostra la pagina incorporata. Quando apri una voce, un blocco salvato attende finché non selezioni Load preview, così l’admin non carica le pagine di altri siti finché non lo chiedi. I blocchi iframe incollati da un altro sito web o da un’altra scheda del browser arrivano vuoti.

Si possono incorporare solo pagine https, e il blocco conserva solo le parti di un codice di incorporamento che gli servono: l’indirizzo, il titolo, la dimensione, il supporto allo schermo intero e i permessi usati dai player. Alcuni siti rifiutano di comparire all’interno della pagina di un altro sito; la loro anteprima resta vuota o mostra un errore proveniente da quel sito.

Un codice di incorporamento che esegue uno script invece di un iframe, come alcuni post dei social media, va in un blocco HTML.

Salvare le modifiche della bozza

Dopo il primo salvataggio, l’editor salva automaticamente le modifiche due secondi dopo che smetti di digitare. Il pulsante Save passa da Saving… a Saved così puoi confermare che il server ha accettato la bozza. Il salvataggio automatico sostituisce la revisione di salvataggio automatico corrente invece di riempire la cronologia delle revisioni con un checkpoint per ogni pausa.

Seleziona Save quando vuoi che un punto della sequenza di modifica resti nella cronologia delle revisioni. Se un salvataggio fallisce, l’editor mantiene al loro posto i campi non salvati e mostra l’errore. Non lasciare la pagina finché il pulsante non torna a Saved o finché non hai copiato altrove il lavoro non salvato.

Per una voce pubblicata, il salvataggio delle modifiche aggiorna solo la sua bozza. I visitatori continuano a ricevere la revisione live precedente. Usa Preview draft per controllare la versione in sospeso, Live View per controllare la versione pubblica e Publish changes quando la bozza è pronta a sostituirla.

Cambiare lo slug di una voce pubblicata segue lo stesso flusso della bozza. L’URL pubblico cambia quando pubblichi la bozza, non quando viene eseguito il salvataggio automatico.

Lavorare con un altro editor

Aprire una voce acquisisce un blocco di modifica per quella voce e quel locale. Se un’altra persona l’ha già aperta, EmDash identifica chi detiene il blocco e offre due scelte:

  • Open read-only mostra la voce senza accettare modifiche, così non digiti un lavoro che verrebbe scartato.
  • Take over ti dà il blocco. L’altra persona conserva ciò che ha digitato, ma entro due minuti il suo editor segnala che sei tu a detenere la voce. Il suo salvataggio successivo viene rifiutato.

Il blocco viene rinnovato mentre la voce è aperta e rilasciato quando lasci l’editor o chiudi la scheda. Se il browser o il computer si chiude senza rilasciarlo, il blocco scade sette minuti dopo l’ultimo rinnovo.

I blocchi sono indipendenti per ogni locale, quindi due persone possono modificare traduzioni diverse della stessa voce. Anche uno script, un client API o un client MCP viene rifiutato finché un altro editor detiene il blocco, a meno che non usi l’override documentato. Vedi Blocco di modifica della voce per il comportamento completo dell’API e Ciclo di vita dei contenuti e byline per gli strumenti MCP.

Un amministratore può disattivare il blocco per una collezione in Content Types, poi nella collezione e infine in Edit locking.

Pubblicare o pianificare le modifiche

Pubblicazione e pianificazione usano controlli separati:

  • Publish now rende live una nuova bozza dopo la conferma.
  • Publish changes rende live le modifiche in sospeso di una voce pubblicata dopo la conferma.
  • Schedule imposta quando una nuova voce o le modifiche in sospeso diventano live.
  • Change schedule aggiorna una pianificazione esistente.
  • Remove schedule annulla una pianificazione esistente.
  • Unpublish rimuove la revisione live dalle query pubbliche, annulla qualsiasi pianificazione e mantiene una bozza modificabile.

Per pianificare una voce, salvala prima, seleziona Schedule sotto il riepilogo di pubblicazione e scegli una data e un’ora future. L’editor mostra il fuso orario usato per la pianificazione. Fino a quel momento, la revisione live corrente resta pubblica; per una nuova voce, non c’è ancora nulla di pubblico.

Le distribuzioni Node.js eseguono automaticamente la scansione di pubblicazione pianificata. Cloudflare Workers richiede un Cron Trigger. I template iniziali di Cloudflare lo includono; le distribuzioni esistenti possono seguire Pubblicazione pianificata per verificare il trigger.

Consultare il calendario di pubblicazione

Il calendario mostra che cosa è stato pubblicato e che cosa è pianificato in tutte le tue collezioni. I Contributors e i ruoli superiori possono aprire Calendar dalla barra laterale o dalla palette dei comandi. Quando qualcosa è pianificato, anche il conteggio Scheduled della dashboard rimanda al calendario.

Il calendario ha due viste:

  • Month mostra una griglia di giorni. Le voci pubblicate compaiono come semplici righe e quelle pianificate come schede. Passa il mouse o sposta il focus su una voce per vederne titolo completo, stato, ora e collezione. Quando un giorno ha più voci di quante ne entrino, seleziona +N more per elencarle tutte.
  • Agenda elenca il mese per giorno, con l’ora di ogni voce. Nel mese corrente, i giorni precedenti a oggi sono compressi a meno che uno di essi abbia una voce in ritardo, e una linea rossa indica il momento presente.

Su un telefono o su un altro schermo stretto, il calendario si apre in Agenda, e Month mostra un selettore di date con punti sui giorni che hanno voci. Seleziona un giorno per elencarne le voci.

Seleziona una voce per aprirne i dettagli in un pannello laterale, oppure fai clic tenendo premuto Ctrl (Cmd su macOS) per aprirla nell’editor in una nuova scheda. Il pannello mostra stato, ora, collezione, locale e traduzioni della voce, le byline e quando è stata modificata l’ultima volta. Dal pannello puoi aprire la voce nell’ editor, visualizzare in anteprima le modifiche pianificate o vedere sul sito una voce pubblicata. Se puoi pubblicare la voce (gli Authors per le proprie voci, e gli Editors e i ruoli superiori per qualsiasi voce), puoi anche ripianificarla, rimuoverne la pianificazione o pubblicare subito una voce in ritardo. Su un telefono, il pannello si apre come foglio nella parte inferiore dello schermo.

Usa Filter per restringere entrambe le viste per collezione e stato, e per locale sui siti multilingue. I filtri, la vista, il mese e la voce aperta sono conservati nell’URL della pagina, così puoi aggiungerla ai preferiti o condividerla.

Le voci sono collocate nei giorni secondo il fuso orario del sito, che il calendario indica accanto al mese. Se il tuo browser usa un fuso orario diverso, il calendario lo segnala, e gli orari delle voci compaiono anche nel tuo fuso orario.

Il calendario mostra:

  • le voci pubblicate alla data in cui sono state pubblicate;
  • le voci pianificate alla loro data pianificata; e
  • le modifiche pianificate di una voce pubblicata alla loro data pianificata, contrassegnate come Update. Quando le modifiche diventano live, la voce compare solo alla sua data di pubblicazione originale.

Una pianificazione che ha superato di più di due minuti il proprio orario viene contrassegnata come Overdue. Di solito significa che la scansione di pubblicazione pianificata non è in esecuzione; vedi Pubblicare o pianificare le modifiche.

Il calendario esclude le bozze senza pianificazione, le voci nel cestino e le collezioni nascoste dalla barra laterale. Il conteggio Scheduled della dashboard copre ogni mese e include le collezioni nascoste, quindi può essere superiore a quanto il calendario mostra per un singolo mese.

Il calendario carica al massimo 1.000 voci per un mese, compresi i giorni dei mesi adiacenti che la griglia mostra. Quando ce ne sono di più, indica in quale giorno finiscono le voci caricate e contrassegna i giorni successivi come non caricati.

Ripristinare una revisione

Le collezioni con supporto alle revisioni mostrano Revisions nel pannello delle impostazioni. Espandilo per vedere le versioni salvate e i campi cambiati tra l’una e l’altra. Seleziona una revisione per ispezionarne il contenuto, poi seleziona Restore se vuoi usare di nuovo quella versione.

Il ripristino crea una nuova revisione contenente il contenuto selezionato. Non cancella le revisioni precedenti, quindi puoi comunque ispezionare in seguito la sequenza completa.

Tradurre una voce

Quando l’internazionalizzazione è abilitata, il pannello Translations mostra i locali configurati per la voce corrente.

  1. Apri la voce di origine e trova Translations nel pannello delle impostazioni.

  2. Seleziona Translate per un locale che non ha ancora una voce.

  3. Modifica il titolo copiato, lo slug, il corpo e gli altri campi traducibili.

  4. Seleziona Save, poi pubblica o pianifica la traduzione quando è pronta.

Ogni traduzione ha il proprio slug, stato di pubblicazione, pianificazione e cronologia delle revisioni. Usa il selettore del locale nella pagina della collezione per vedere una lingua alla volta.

Spostare i contenuti nel cestino

Apri le azioni di una voce o seleziona una o più righe nella pagina della collezione, poi scegli Move to Trash. Le voci nel cestino smettono di comparire nelle normali query di contenuto ma restano disponibili nella scheda Trash della collezione.

Da Trash, seleziona Restore per riportare una voce nella collezione. Una voce ripristinata torna come bozza senza pianificazione. Pubblicala per renderla pubblica.

Automatizzare il lavoro sui contenuti

L’API REST e la CLI di EmDash supportano lo stesso flusso di bozza e pubblicazione. I campi della collezione vanno dentro l’oggetto data della richiesta. Un aggiornamento salva una revisione bozza; la pubblicazione è un’azione separata. Passa l’ultimo valore _rev quando aggiorni o pubblichi in modo che il server rifiuti una scrittura obsoleta invece di sostituire un lavoro più recente.

Usa il riferimento al ciclo di vita dei contenuti per transizioni di stato, permessi, conflitti e hook. Il riferimento all’API REST definisce i corpi di richiesta e di risposta, e il riferimento alla CLI copre i comandi di terminale equivalenti.

Continua con Interrogare i contenuti per renderizzare le voci pubblicate in un sito Astro, oppure con la Libreria multimediale per aggiungere e gestire file riutilizzabili.