 
Come far funzionare (di nuovo) la vostra installazione di Drupal 8.
 
 
Nozioni di base
In Drupal 8 gli URL puliti sono abilitati per impostazione predefinita e non possono essere disattivati. Tuttavia, il modulo di riscrittura (mod_rewrite) deve essere installato sul vostro server web.
Controllate la barra degli indirizzi del browser. L’URL del vostro sito non dovrebbe contenere ?q= nell’indirizzo.
Esempio di “URL pulito” corretto:
http://www.example.com/node/83
Esempio di “URL pulito” non funzionante:
http://www.example.com/?q=node/83
 
 
Questa guida contiene esercitazioni e altre informazioni necessarie per creare moduli per Drupal 8.
Altre risorse:
 
 
Drupal 8 utilizza una serie di funzionalità avanzate del linguaggio PHP e librerie di terze parti complesse per offrire agli sviluppatori il più potente API disponibile tra i CMS. Sebbene gli sviluppatori esperti di Drupal 7 possano notare alcuni cambiamenti significativi, gran parte della struttura di base rimane familiare.
 
 
Nei seguenti sottocapitoli della guida creeremo esempi di diverse parti di un sito Drupal, come una pagina personalizzata, un blocco, un’entità, un campo e così via. Tutti gli esempi iniziano con la cartella del modulo e il file .info.yml, e solo con questi due elementi il modulo apparirà nella pagina di amministrazione delle estensioni di Drupal 8 o potrà essere attivato direttamente tramite Drush.
 
 
Prima di iniziare
Se volete che PHP vi aiuti a individuare gli errori sul sito di test, provate le impostazioni descritte qui: Visualizzare tutti gli errori durante lo sviluppo.
Nominate il vostro modulo
Il primo passo nella creazione di un modulo è scegliere per esso un “nome breve” o nome macchina. Questo nome macchina verrà utilizzato in diversi file e funzioni del vostro modulo, e il core di Drupal lo utilizza a livello programmatico per identificare il vostro modulo.
 
 
Tema principale: metadati del progetto
Il file .info.yml (chiamato anche “file info yaml”) è una parte importante di un modulo, tema o profilo di installazione di Drupal 8 per memorizzare i metadati sul progetto.
Questi file .info.yml sono necessari per:
 
 
Nello sviluppo di moduli personalizzati esistono diversi scenari che richiedono allo sviluppatore di aggiungere un file composer.json al proprio modulo. Alcuni di questi scenari dipendono dal fatto che il modulo personalizzato sia destinato a essere condiviso con la comunità come progetto su drupal.org.
Se lo sviluppatore del modulo desidera utilizzare una libreria PHP ospitata su packagist.org, deve aggiungere un file composer.json al proprio progetto.
 
 
Nella prossima sezione analizzeremo la creazione di un semplice modulo. Esiste una lunga tradizione secondo cui il primo programma che si scrive in qualsiasi nuovo sistema visualizza sullo schermo «Hello World!».
Anche se Drupal è uno dei progetti open source più audaci e progressivi, è anche profondamente radicato nelle antiche tradizioni della scienza e della tecnologia.
 
 
La funzione content() nella classe HelloController restituirà il testo del markup quando il sistema di routing richiama la pagina.
Nella cartella del vostro modulo dovreste avere la struttura standard delle cartelle PSR-4 /src/Controller, e all’interno di questa cartella ci deve essere il file del controller HelloController.php.
Quindi, il vostro file del controller sarà
/src/Controller/HelloController.php
Nel file HelloController.php avrete il seguente codice:
