logo

Extra Block Types (EBT) - Nuova esperienza con Layout Builder❗

Extra Block Types (EBT) - tipi di blocchi stilizzati e personalizzabili: Slideshows, Tabs, Cards, Accordion e molti altri. Impostazioni integrate per sfondo, DOM Box, plugin javascript. Vivi oggi il futuro della costruzione dei layout.

Demo moduli EBT Scarica moduli EBT

❗Extra Paragraph Types (EPT) - Nuova esperienza con Paragraphs

Extra Paragraph Types (EPT) - insieme di moduli basati su paragrafi in modo analogo.

Demo moduli EPT Scarica moduli EPT

Scorri

9.9. Gestione della configurazione in Drupal. Configurazione attiva, sincronizzazione della configurazione, trasferimento delle configurazioni da DEV a LIVE.

17/10/2025, by Ivan

Menu

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:

https://www.drupal.org/project/features

Solo che i Features non sono integrati con tutti i moduli e non è sempre possibile trasferire tutte le impostazioni del sito tramite Features. La configurazione in Drupal funziona con tutte le impostazioni e consente di caricare tutto su file.

Quando installi Drupal, viene creata una cartella per caricare la configurazione. Per impostazione predefinita, è una cartella con un nome lungo, che si trova in sites/default/files:

config

Il nome della cartella viene generato casualmente perché la cartella si trova nel dominio pubblico nella cartella files che ha diritti di accesso 777. Un nome così lungo impedisce di abbinare il nome della cartella alle configurazioni da caricare. Il fatto è che le configurazioni possono contenere API, Solr, accessi SMTP e queste informazioni devono essere nascoste. Possiamo specificare il percorso della cartella di configurazione tramite il file settings.php:

$config_directories['sync'] = 'sites/default/files/config__RPFDnw0- VygzmxgHiXPoXGNKYmjVi3mDZmP5exZX8tRleV9jXG6ZECaPRaxekelYsMCF42HwA/sync';

La cartella Sync sarà utilizzata per trasferire le configurazioni tra i siti. Drupal memorizza le configurazioni nel database per impostazione predefinita e utilizza la configurazione attiva. Puoi memorizzare la configurazione attiva in file così come nella cartella di sincronizzazione, ma è meglio lasciare la configurazione attiva nel database, così Drupal funzionerà più velocemente. Puoi visualizzare la tabella delle configurazioni con le configurazioni tramite PhpMyAdmin o Adminer:

config

Gli array serializzati con le configurazioni sono memorizzati qui.

Tipicamente, la cartella sync con le configurazioni è memorizzata fuori da sites/default/files, poiché la cartella files non è memorizzata nel git. Cambiamo il percorso della cartella di configurazione:

$config_directories['sync'] = 'config/sync';

Ora possiamo aggiungere le nostre configurazioni a Git. Puoi caricare la configurazione manualmente:

/admin/config/development/configuration/full/export

Configurazione -> Sincronizzazione configurazione -> Esporta

export

Se fai clic sul pulsante Esporta, Drupal visualizzerà un archivio con tutte le configurazioni. Ora puoi aggiungere queste configurazioni a Git:

configuration

Lo scaricamento manuale delle configurazioni tramite il sito non funziona sempre. Quando hai molte configurazioni, il caricamento potrebbe essere interrotto. Pertanto, è meglio caricare tramite Drush:

drush config-export

o tramite la Drupal Console:

drupal config:export

Lo stesso vale per l'importazione, può essere fatto tramite Drush:

drush config-import

e tramite la Drupal Console:

drupal config:import

Conservare le configurazioni nella root del sito non è una buona idea. È meglio conservare le configurazioni in una cartella separata modificando settings.php:

$config_directories['sync'] = '../config/sync';

Quando stai studiando Drupal, puoi lasciare una cartella con le configurazioni così com'è nella root del sito.

Ora che hai caricato la configurazione e l'hai aggiunta a Git, puoi caricarla su un altro sito. Cambiamo qualche impostazione sul sito, come il nome del sito:

/admin/config/system/site-information

E vai alla pagina di Sincronizzazione della Configurazione:

/admin/config/development/configuration

syncronize

Drupal confronta la configurazione attiva corrente dalla tabella delle configurazioni con la configurazione di sincronizzazione e se ci sono differenze, puoi vederle su questa pagina. Se fai clic sul pulsante Importa tutto, ti verrà chiesto di caricare la tua configurazione di sincronizzazione nella tua configurazione attiva nella tabella delle configurazioni. In questo modo puoi compilare le tue modifiche.