
In questo tutorial, vedremo come visualizzare i blocchi programmaticamente tramite un modulo personalizzato in Drupal 8.
Esempi di codice possono essere visualizzati su GitHub:
https://github.com/levmyshkin/drupalbook8
Iniziamo aggiungendo un file contenente una classe PHP, questo è il modo in cui i blocchi vengono creati in Drupal tramite un modulo personalizzato. Il processo di creazione del file è lo stesso di una classe per la pagina, come abbiamo fatto qui:


In questo tutorial, tratteremo la Form API di Drupal e creeremo un modulo di configurazione per il modulo. Abbiamo già creato moduli per visualizzare la pagina e il blocco, ora creiamo un modulo di configurazione in cui memorizzeremo i dati per connettersi a un servizio condizionale. Supponiamo di dover memorizzare la chiave API e l'ID client API sul sito, ad esempio, per l'API di Google Maps.
Esempi di codice possono essere visualizzati su GitHub:
https://github.com/levmyshkin/drupalbook8


In una delle lezioni precedenti abbiamo imparato cosa sono gli hook, in questa lezione lavoreremo con gli hook hook_form_alter()
in pratica e aggiungeremo funzionalità al modulo esistente.
Esempi di codice sono disponibili su GitHub:
https://github.com/levmyshkin/drupalbook8
In questa lezione inizieremo a esaminare gli hook in pratica, più avanti torneremo sugli hook e vedremo un paio di altri esempi. Per ora, iniziamo con hook_form_alter()
.


In questo articolo continueremo a comprendere la Form API in Drupal 8 e creeremo un modulo multistep. Abbiamo già creato il modulo di configurazione standard per il modulo, il modulo multistep viene creato in modo simile utilizzando $form_state
per memorizzare i dati tra i passaggi del modulo.
Esempi di codice sono disponibili su GitHub:
https://github.com/levmyshkin/drupalbook8
Per un modulo multistep devi aggiungere una classe per il modulo:


La configurazione in Drupal è la base per tutte le impostazioni dei tipi di contenuto, dei campi, dei moduli di configurazione e delle variabili. Grazie alla configurazione, possiamo trasferire le modifiche da un sito a un altro, sviluppare funzionalità diverse allo stesso tempo senza interferire tra loro.
Le configurazioni possono essere caricate in file YML e aggiunte al repository Git, così puoi fare il commit delle modifiche nelle impostazioni del sito e trasferire le modifiche su DEV o LIVE. L'idea della configurazione in Drupal è simile a come funziona il modulo Features:


Quando importi una configurazione da un sito a un altro, alcune configurazioni sono necessarie per visualizzare i contenuti, ma la configurazione del contenuto stesso non ne contiene alcuna. In questo tutorial, spiegheremo come trasferire blocchi, nodi e termini di tassonomia da un sito a un altro.


Molto spesso l'accesso ai servizi di terze parti deve essere diverso tra le istanze di sviluppo e quelle live. Per fare ciò tramite configurazioni, è necessario utilizzare il modulo Configuration Split:
https://www.drupal.org/project/config_split
Una volta abilitato il modulo Config Split, sarai in grado di specificare le cartelle per le istanze. Andiamo alla pagina delle impostazioni di Configuration Split nel modulo di configurazione:
/admin/config/development/configuration/config-split


In questo articolo capiremo come funzionano i campi in Drupal, perché sono necessari e come i campi aiutano a sviluppare rapidamente siti in Drupal.
Abbiamo già lavorato con i campi negli articoli precedenti:


In questo tutorial vedremo come funziona il Field Widget del modulo Link. Questo è un articolo di revisione, quindi se vuoi iniziare a scrivere il tuo Field Widget, passa agli articoli seguenti.
Nell'ultima lezione abbiamo aggiunto campi Link per nodi e blocchi. Ora vediamo come viene creato il modulo per il campo Link.
Abbiamo già visto come funziona l'autoloading delle classi PHP in Drupal, e c'è anche una classe WidgetBase per i widget dei campi:
core/lib/Drupal/Core/Field/WidgetBase.php


In questo articolo esamineremo i Field Formatter, che ci permettono di modificare la visualizzazione dei campi e di visualizzarli sulla pagina.
Negli articoli precedenti, abbiamo creato il tipo di campo Link, in questo articolo vedremo come questi campi vengono visualizzati sulla pagina e quale classe è responsabile di questo. Ogni campo che aggiungi tramite Drupal può essere visualizzato sulla pagina e ne puoi modificare le impostazioni nella pagina Gestisci visualizzazione.
