Lavorare con i contenuti

In questa pagina

Questa guida copre come creare, modificare e gestire i contenuti usando il pannello admin di EmDash.

Accedere all’admin

Apri il browser su /_emdash/admin sul tuo sito. Accedi con le credenziali create durante la configurazione.

La dashboard mostra:

  • Barra laterale - Navigazione verso collection, media e impostazioni
  • Lista contenuti - Voci nella collection selezionata
  • Azioni rapide - Creare nuovo contenuto, operazioni in blocco

Creare contenuto

  1. Clicca sul nome di una collection nella barra laterale (es., Posts)

  2. Clicca su New Post (o l’equivalente per la tua collection)

  3. Compila i campi obbligatori:

    • Title - Il nome visualizzato del contenuto
    • Slug - Identificatore URL (generato automaticamente dal titolo, modificabile)
  4. Aggiungi contenuto usando l’editor di testo ricco

  5. Imposta i metadati nella barra laterale:

    • Status - Bozza, Pubblicato o Archiviato
    • Data di pubblicazione - Quando pubblicare
    • Categorie e tag - Assegnazioni tassonomiche
  6. Clicca su Salva

Le bozze sono visibili solo nell’admin. Cambia lo stato in Pubblicato per rendere il contenuto visibile sul tuo sito.

Stati del contenuto

Ogni voce ha uno dei tre stati:

StatoVisibilitàCaso d’uso
BozzaSolo adminLavoro in corso
PubblicatoPubblicoContenuto attivo
ArchiviatoSolo adminContenuto ritirato

Cambia lo stato usando il menu a tendina nella barra laterale dell’editor.

L’editor di testo ricco

L’editor di EmDash supporta:

  • Intestazioni - H2 fino a H6
  • Formattazione - Grassetto, corsivo, sottolineato, barrato
  • Liste - Ordinate e non ordinate
  • Link - Interni ed esterni
  • Immagini - Inserimento dalla libreria media
  • Blocchi di codice - Con evidenziazione della sintassi
  • Blocchi HTML - HTML grezzo per incorporamenti e widget personalizzati
  • Incorporamenti - YouTube, Vimeo, Twitter
  • Sezioni - Blocchi di contenuto riutilizzabili tramite il comando /section

Comandi slash

Digita / per accedere ai comandi di inserimento rapido:

ComandoAzione
/sectionInserire una sezione riutilizzabile
/imageInserire un’immagine dalla libreria media
/codeInserire un blocco di codice
/htmlInserire un blocco HTML grezzo

Scorciatoie da tastiera

AzioneScorciatoia
GrassettoCtrl/Cmd + B
CorsivoCtrl/Cmd + I
LinkCtrl/Cmd + K
AnnullaCtrl/Cmd + Z
RipetiCtrl/Cmd + Shift + Z
SalvaCtrl/Cmd + S

Inserire immagini

  1. Clicca sul pulsante immagine nella barra degli strumenti

  2. Seleziona un’immagine esistente dalla libreria media, o caricane una nuova

  3. Aggiungi testo alternativo (obbligatorio per l’accessibilità)

  4. Regola le opzioni di allineamento e dimensione

  5. Clicca su Inserisci

Blocchi HTML

Usa /html per inserire un blocco HTML grezzo. Questo è utile per incorporare widget di terze parti, markup personalizzato o contenuti che non rientrano nei tipi di blocco standard. I blocchi HTML vengono anche creati automaticamente quando si importano contenuti da WordPress o Contentful che contengono markup che EmDash non può convertire in blocchi Portable Text nativi.

Per consentire iframe da provider aggiuntivi, sovrascrivi il componente htmlBlock nel tuo rendering Portable Text:

---
// src/components/MyHtmlBlock.astro
import sanitizeHtml from "sanitize-html";

const { node } = Astro.props;

if (!node?.html) {
  return null;
}

const sanitized = sanitizeHtml(node.html, {
  allowedTags: [...sanitizeHtml.defaults.allowedTags, "img", "span", "iframe"],
  allowedAttributes: {
    ...sanitizeHtml.defaults.allowedAttributes,
    "*": ["class", "id", "data-*", "style"],
    iframe: ["src", "width", "height", "frameborder", "allow", "allowfullscreen"],
    img: ["src", "srcset", "alt", "title", "width", "height", "loading"],
  },
  allowedIframeHostnames: [
    "www.youtube.com",
    "player.vimeo.com",
    "iframe.videodelivery.net", // Cloudflare Stream
    // Aggiungi i tuoi provider qui
  ],
});
---

<div class="html-block" set:html={sanitized} />

Poi passalo a <PortableText>:

---
import { PortableText } from "emdash/ui";
import MyHtmlBlock from "../components/MyHtmlBlock.astro";
---

<PortableText
  value={post.data.content}
  components={{ type: { htmlBlock: MyHtmlBlock } }}
/>

Modificare contenuto

  1. Naviga alla collection contenente il contenuto

  2. Clicca sulla voce che vuoi modificare

  3. Effettua le modifiche

  4. Clicca su Salva

Le modifiche ai contenuti pubblicati appaiono immediatamente sul tuo sito.

Cronologia delle revisioni

EmDash traccia le modifiche ai contenuti. Accedi alla cronologia delle revisioni dalla barra laterale dell’editor:

  1. Clicca su Revisions nella barra laterale dell’editor

  2. Visualizza l’elenco delle versioni precedenti con timestamp

  3. Clicca su una revisione per visualizzarla in anteprima

  4. Clicca su Ripristina per tornare a quella versione

Il ripristino di una revisione crea una nuova revisione con il contenuto ripristinato. La cronologia delle revisioni originale viene preservata.

Operazioni in blocco

Esegui azioni su più voci contemporaneamente:

  1. Usa le caselle di controllo per selezionare le voci nella lista dei contenuti

  2. Clicca sul menu a tendina Azioni in blocco

  3. Seleziona un’azione:

    • Pubblica - Imposta tutti i selezionati come pubblicati
    • Archivia - Imposta tutti i selezionati come archiviati
    • Elimina - Rimuovi permanentemente i selezionati
  4. Conferma l’azione

Ricerca e filtri

Ricerca

Usa la casella di ricerca per trovare contenuti per titolo o contenuto. La ricerca non distingue tra maiuscole e minuscole e corrisponde a parole parziali.

Filtri

Filtra la lista dei contenuti per:

  • Stato - Bozza, Pubblicato, Archiviato
  • Intervallo di date - Date di creazione o modifica
  • Autore - Chi ha creato il contenuto
  • Tassonomia - Assegnazioni di categoria o tag

Clicca su Cancella filtri per reimpostare.

Programmare contenuti

Programma contenuti per la pubblicazione in una data futura:

  1. Crea o modifica contenuto

  2. Imposta lo stato su Bozza

  3. Imposta la Data di pubblicazione su una data e ora future

  4. Clicca su Salva

Quando arriva la data di pubblicazione, il contenuto viene pubblicato automaticamente.

Eliminare contenuti

Elimina contenuti dalla schermata di modifica o dalla lista dei contenuti:

Dall’editor

  1. Apri il contenuto che vuoi eliminare

  2. Clicca su Elimina nella barra degli strumenti

  3. Conferma l’eliminazione

Dalla lista

  1. Seleziona le voci usando le caselle di controllo

  2. Clicca su Azioni in blocco > Elimina

  3. Conferma l’eliminazione

API dei contenuti

Per l’accesso programmatico, usa l’API di amministrazione EmDash.

Creare contenuto

La seguente richiesta crea un post in bozza:

POST /_emdash/api/content/posts
Content-Type: application/json
Authorization: Bearer YOUR_API_TOKEN

{
  "title": "Il mio nuovo post",
  "slug": "il-mio-nuovo-post",
  "content": "<p>Contenuto del post qui</p>",
  "status": "draft"
}

Aggiornare contenuto

La seguente richiesta aggiorna un post esistente e lo pubblica:

PUT /_emdash/api/content/posts/il-mio-nuovo-post
Content-Type: application/json
Authorization: Bearer YOUR_API_TOKEN

{
  "title": "Titolo aggiornato",
  "status": "published"
}

Eliminare contenuto

La seguente richiesta elimina permanentemente un post:

DELETE /_emdash/api/content/posts/il-mio-nuovo-post
Authorization: Bearer YOUR_API_TOKEN

Tradurre contenuti

Quando l’i18n è abilitato, puoi creare traduzioni di qualsiasi voce di contenuto.

Creare una traduzione

  1. Apri la voce di contenuto che vuoi tradurre

  2. Nella barra laterale dell’editor, trova il pannello Translations

  3. Clicca su Traduci accanto alla lingua di destinazione

  4. Modifica il contenuto pre-compilato — adatta il titolo, lo slug e il corpo per la nuova lingua

  5. Clicca su Salva

La nuova traduzione è collegata alla voce originale e inizia come bozza. Pubblicala indipendentemente quando la traduzione è pronta.

Passare tra le traduzioni

Il pannello Traduzioni mostra tutte le lingue configurate. Clicca su Modifica accanto a qualsiasi traduzione esistente per navigare direttamente. La lingua corrente è contrassegnata con un segno di spunta.

Filtro per lingua

Nella lista dei contenuti, usa il menu a tendina della lingua nella barra degli strumenti per filtrare le voci per lingua. Ogni voce mostra la sua lingua in una colonna dedicata.

Ogni traduzione ha il proprio slug, stato e cronologia delle revisioni. Pubblica, programma e gestisci le traduzioni indipendentemente.

Consulta la guida all’Internazionalizzazione per dettagli completi su configurazione, query e selettore di lingua.

Prossimi passi