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
04/10/2025, by Ivan
A differenza di Drupal 7, creare più istanze di un blocco da posizionare sul tuo sito è un compito semplice in Drupal 8. In questo tutorial imparerai come aggiungere programmaticamente un blocco nell’interfaccia di Layout dei blocchi. Vedrai come aggiungere un form di configurazione (amministrativo) al blocco e come gestirlo.
04/10/2025, by Ivan

Ora diciamo che vogliamo aggiungere la possibilità per il site builder di inserire una parte di configurazione per ogni istanza del nostro blocco personalizzato. Tenete sempre presente che tutte le configurazioni del sito in Drupal 8 possono essere esportate da un sito di sviluppo e importate su un sito di produzione (conosciuto come Gestione della configurazione).

04/10/2025, by Ivan

Aggiungete il seguente metodo alla classe HelloBlock. In questo esempio si trova nel file src/Plugin/Block/HelloBlock.php, ma, man mano che iniziate a pensare in una modalità più orientata agli oggetti, la posizione fisica nella struttura delle cartelle è meno importante rispetto allo spazio dei nomi. Se siete programmatori OO molto attenti, terrete queste due cose strettamente allineate.

04/10/2025, by Ivan

Per utilizzare la configurazione delle istanze del blocco, possiamo modificare il metodo build() della classe HelloBlock:

  /**
   * {@inheritdoc}
   */  
  public function build() {
    $config = $this->getConfiguration();

    if (!empty($config['hello_block_name'])) {
      $name = $config['hello_block_name'];
    }
    else {
      $name = $this->t('a nessuno');
    }

    return [
      '#markup' => $this->t('Ciao @name!', [
        '@name' => $name,
      ]),
    ];
  }

 

04/10/2025, by Ivan

Questo tutorial è stato originariamente pubblicato su Web Wash. Tuttavia, Berdir ha chiesto se potevo pubblicarlo anche qui, quindi eccolo.

Il modulo in Drupal 7 permette di memorizzare esempi di codice/snippet in un campo. Viene fornito con un campo personalizzato chiamato “Campo snippet” e mostra tre elementi del form: descrizione, codice sorgente e modalità di evidenziazione della sintassi (cioè il linguaggio di programmazione).

04/10/2025, by Ivan

I tipi di campo definiscono le proprietà e il comportamento dei campi. I tipi di campo sono definiti come plugin, quindi è consigliato leggere l’API dei plugin prima di iniziare a scrivere un nuovo tipo di campo.

Per creare un tipo di campo in Drupal 8, serve una classe con l’annotazione FieldType.

Percorso della classe del tipo di campo: MODULE_NAME/src/Plugin/Field/FieldType
/modules/foo/src/Plugin/Field/FieldType/BazItem.php