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
03/10/2025, by Ivan

Per impostazione predefinita, le informazioni di configurazione in Drupal 8 vengono salvate nel database.

Formato dei file di configurazione (YAML)

Le estensioni (moduli, temi e profili) forniscono i dati di configurazione in file YAML.

Ecco un esempio di file di configurazione:

some_string: 'Woo kittens!'
some_int: 42
some_bool: true

La configurazione può anche essere annidata. Ecco un esempio:

name: thumbnail
label: 'Thumbnail (100x100)'
effects:
  1cfec298-8620-4749-b100-ccb6c4500779:
    id: image_scale
    data:
      width: 100
      height: 100
      upscale: true
    weight: 0
    uuid: 1cfec298-8620-4749-b100-ccb6c4500779

Schema di configurazione

La configurazione ha uno schema. Questo è descritto in schema di configurazione / documentazione dei metadati.

Configurazione predefinita per un’estensione

Un’estensione (modulo, tema o profilo) che fornisce valori predefiniti per la propria configurazione deve inserire questi file YAML nella sottocartella config/install.

Se l’estensione richiede solo parametri di configurazione semplici, tutte le impostazioni predefinite possono essere collocate in un unico file modulename.settings.yml. Per impostazioni più complesse, puoi suddividere la configurazione in più file. Ogni oggetto di configurazione deve avere il proprio file YAML, generato automaticamente quando il modulo salva la configurazione (non tentare di scriverli manualmente).

Per fornire valori predefiniti per configurazioni che richiedono valori dinamici (che quindi non possono essere impostati in modulename.settings.yml), è possibile farlo in hook_install(). Ad esempio:

/**
 * Implements hook_install().
 */
function modulename_install() {
  // Imposta valori predefiniti per configurazioni che richiedono valori dinamici.
  \Drupal::configFactory()->getEditable('modulename.settings')
    ->set('default_from_address', \Drupal::config('system.site')->get('mail'))
    ->save();
}

Configurazione opzionale per un’estensione

Gli elementi di configurazione opzionali per un’estensione (modulo o tema) vengono memorizzati nella sottocartella config/optional.

Si tratta di elementi di configurazione che dipendono da qualcosa di cui l’estensione non dipende esplicitamente, e quindi vengono installati solo se tutte le dipendenze richieste sono soddisfatte.

Ad esempio, se il modulo A ha configurazioni opzionali che richiedono il modulo B, ma A viene installato prima e B solo successivamente, allora la cartella config/optional del modulo A verrà analizzata al momento dell’installazione di B e le configurazioni opzionali verranno applicate allora. Se il modulo B non viene mai installato, l’elemento di configurazione opzionale non sarà mai applicato.

Archivio della configurazione attiva

Per impostazione predefinita Drupal 8 salva la configurazione attiva nel database, per motivi di prestazioni e scalabilità. Vedi «La configurazione attiva predefinita» per ulteriori dettagli sul passaggio dallo storage file allo storage DB.

Aggiornare la configurazione da YAML al database

Se durante lo sviluppo hai bisogno di aggiornare la configurazione da YAML al database, puoi usare il comando drush config-import (cim).
Modifica il file YAML di configurazione nella cartella di sincronizzazione definita in settings.php (ad esempio sites/default/files/config_6dh1U_2YKLGrrh5oLxAgobbledygook/sync), quindi esegui drush cim. Pulisci le cache (drush cr) per vedere i cambiamenti.
Se sei soddisfatto delle impostazioni nel file YAML, puoi copiarle nel tuo modulo o tema.