logo

Extra Block Types (EBT) - Nieuwe Layout Builder ervaring❗

Extra Block Types (EBT) - gestileerde, aanpasbare bloktypes: Slideshows, Tabs, Cards, Accordions en vele andere. Ingebouwde instellingen voor achtergrond, DOM Box, javascript-plugins. Ervaar vandaag al de toekomst van layout building.

Demo EBT-modules Download EBT-modules

❗Extra Paragraph Types (EPT) - Nieuwe Paragraphs ervaring

Extra Paragraph Types (EPT) - analoge op paragrafen gebaseerde set modules.

Demo EPT-modules Download EPT-modules

Scroll
04/10/2025, by Ivan

Menu

Voeg de volgende methode toe aan de klasse HelloBlock. In dit voorbeeld bevindt deze zich in het bestand src/Plugin/Block/HelloBlock.php, maar naarmate je meer in een OOP-georiënteerde manier gaat denken, is de fysieke locatie in de bestandsstructuur minder belangrijk dan de namespace. Als je een ervaren OO-programmeur bent, houd je beide nauwkeurig op elkaar afgestemd. Voor de zekerheid: de namespace—die sterk lijkt op de mapnaam van de module en de machinenaam uit onze eerdere bespreking—zal later belangrijk zijn wanneer je programmatisch met de code van je module wilt werken.

/**
 * {@inheritdoc}
 */
public function blockSubmit($form, FormStateInterface $form_state) {
  $this->configuration['hello_block_name'] = $form_state->getValue('hello_block_name');
}

Als je een fieldset-wrapper rond de formelementen hebt, moet je een array doorgeven aan de functie getValue() in plaats van alleen de veldnaam. Hier is myfieldset het fieldset dat het veld hello_block_name bevat.

$this->configuration['hello_block_name'] = $form_state->getValue(['myfieldset', 'hello_block_name']);

Door deze code toe te voegen, wordt het formulier verwerkt en wordt de invoer van het formulier opgeslagen in de configuratie voor dit specifieke blokexemplaar, onafhankelijk van andere blokexemplaren. Het blok gebruikt echter nog steeds niet het bijgewerkte configuratieresultaat. Dat komt op de volgende pagina van het boek.