Con la Guida precedente hai creato uno o più Tipi di Contenuto dove memorizzare i dati della tua app. Vediamo ora i comandi base disponibili all'Amministratore per popolare la app di Contenuti. Questi comandi sono sufficienti per la app "Miei Libri" perché l'unico Utente è proprio l'Amministratore. Nelle Guide successive vedremo invece come predisporre per gli Utenti comandi semplificati per gestire i Contenuti, come ad esempio nella app "Prestiti tra Vicini".
Creare nuovi Contenuti
Creato un Tipo di Contenuto, per creare un Contenuto di quel tipo utilizza il comando Contenuto - Aggiungi contenuto e seleziona il Tipo di Contenuto. Ti viene mostrata la pagina di creazione in cui compilare i Campi del nuovo Contenuto. La pagina di creazione è anche richiamabile col link:
/node/add/tipo_contenuto
dove tipo_contenuto è il nome interno del Tipo di Contenuto che stai creando, es:
/node/add/richiesta
Se l'ordine con cui i Campi sono mostrati nella pagina di creazione non ti soddisfa, col comando Struttura - Tipi di contenuto - Gestione visualizzazione form a fianco del Tipo di Contenuto richiami una pagina in cui puoi riordinare i Campi trascinandoli. Nella medesima pagina, per alcuni tipi di Campi puoi anche cambiare la modalità (Widget) con cui compilarli. I Widget disponibili dipendono dal tipo di Campo e dai moduli installati.
Precaricare i Campi di un nuovo Contenuto
In alcune situazioni può risultare utile precaricare il valore di uno o più Campi del nuovo Contenuto, per ridurre gli errori di digitazione. Il Campo può essere precaricato con un valore fisso o dinamico.
PRECARICARE UN VALORE FISSO
In Struttura - Tipi di Contenuto seleziona Gestione Campi del Tipo di Contenuto, clicca Modifica sul Campo, attiva Set default value e digita o seleziona il valore di default: nella pagina di creazione di un nuovo Contenuto, il Campo apparirà precaricato con quel valore, che l'Utente potrà modificare.
PRECARICARE UN VALORE DINAMICO
Questa soluzione consente di precaricare un Campo di un nuovo Contenuto tenendo conto del contesto in cui avviene la creazione. Ad esempio, nella app "Prestiti tra Vicini" il tipo di Contenuto "Richiesta" ha un Campo riferimento "Oggetto" che richiama l'Oggetto chiesto in prestito; volendo presentare all'Utente un comando "Chiedi in prestito" mentre sta guardando uno specifico Oggetto, è utile precaricare nel Campo "Oggetto" della nuova Richiesta l'identificativo di quell'Oggetto, evitando così che l'Utente debba selezionarlo nuovamente, magari sbagliandosi.
Per ottenere questo risultato, serve il modulo aggiuntivo Entity Prepopulate. Installato ed attivato il modulo, devi (a) predisporre il Campo "Oggetto" della Richiesta a ricevere via link l'identificativo dell'Oggetto e (b) scrivere l'identificativo dell'Oggetto nel link di richiamo della pagina di creazione della Richiesta.
a. Predisporre il Campo a ricevere un valore via link
Per predisporre il Campo "Oggetto" della Richiesta a ricevere via link l'identificativo dell'Oggetto:
- vai in Struttura - Tipi di contenuto - Richiesta - Gestisci Campi - Oggetto - Modifica
- nella sezione Entity Prepopulate digita il Token [current-page:query:oggetto]
Il Token [current-page:query:oggetto] (messo a disposizione dal modulo "Entity Prepopulate") consente di recuperare dal link che richiama la pagina il valore associato all'argomento "oggetto". Come sempre, non è necessario ricordare il Token a memoria, perché è tra quelli elencati nella pagina di configurazione del Campo. Non è necessario che l'argomento si chiami come il Campo, funzionerebbe lo stesso se al posto di "oggetto" scrivessimo "id", "ogg" o una qualunque altra parola.
b. Scrivere nel link il valore del Campo
Abbiamo già visto che il link per richiamare la pagina di creazione di una Richiesta è:
/node/add/richiesta
Per precaricare nel Campo "oggetto" della nuova Richiesta uno specifico Oggetto, scriviamo il suo identificativo (es. 371) nel link nel seguente modo:
/node/add/richiesta?oggetto=371
Vedremo più avanti come costruire questi link, deducendo automaticamente dal contesto l'identificativo da scrivere nel link.
Con la stessa tecnica, possiamo precaricare nel link più Campi, concatenandoli in questo modo:
/node/add/tipo_contenuto?campo1=valore1&campo2=valore2&campo3=valore3
Il carattere ? inizia l'elenco delle coppie argomento=valore ed il carattere & separa le diverse coppie tra loro.
Cercare i Contenuti
Come Amministratore, nella sezione Contenuto trovi un semplice modulo per la ricerca dei Contenuti inseriti. Gli altri Utenti useranno il motore di ricerca di Drupal o - meglio - le Viste che tu metterai a loro disposizione.
Come viene mostrato un Contenuto
Ogni Contenuto inserito è visibile alla pagina:
/node/ID
dove ID è l'identificativo del Contenuto.
Se l'ordine con cui i Campi sono mostrati nella pagina di visualizzazione non ti soddisfa, vai in Struttura - Tipi di contenuto e seleziona Gestione visualizzazione a fianco del Tipo di Contenuto: oltre a modificare l'ordine, puoi anche nascondere Campi o le loro etichette e, per alcuni tipi di Campi, modificare la modalità (Widget) con cui è mostrato il valore. Per nascondere un Campo basta trascinarlo sotto Disattivati.
Vedremo più avanti come migliorare ed arricchire la pagina di visualizzazione dei Contenuti.
Modificare un Contenuto
Per modificare un Contenuto, vai nella sua pagina di visualizzazione e clicca Modifica. Puoi anche andare direttamente alla pagina di modifica con questo link:
/node/ID/edit
Eliminare un Contenuto
Per eliminare un Contenuto, vai alla sua pagina di visualizzazione e clicca Elimina. Puoi anche andare direttamente alla pagina di eliminazione con questo link:
/node/ID/delete
Un Contenuto eliminato non è più recuperabile.
Nascondere un Contenuto
Se vuoi rendere invisibile un Contenuto senza eliminarlo (ad esempio per ripresentarlo più avanti), vai in Modifica del Contenuto e disattiva il Campo Pubblicato.