-
EBT Blocks 🧱
-
EPT Paragraphs 🆕
-
Resources & Support
- Drupal Book
- Blog
- Case Studies
- Drupal Documentation
- JSON Drop API Documentation
- Forum
- What's New
- Download Drupal
- Contact
Canvas Palette - Make it Colorful🎨
Canvas Palette - Drag in blocks, drop in a video, add a splash of color - no design degree required.
Extra Block Types (EBT) - New Layout Builder experience❗
Extra Block Types (EBT) - styled, customizable block types: Slideshows, Tabs, Cards, Accordions and many others. Built-in settings for background, DOM Box, javascript plugins. Experience the future of layout building today.
❗Extra Paragraph Types (EPT) - New Paragraphs experience
Extra Paragraph Types (EPT) - analogical paragraph based set of modules.
GLightbox is a pure javascript lightbox (Colorbox alternative without jQuery)❗
It can display images, iframes, inline content and videos with optional autoplay for YouTube, Vimeo and even self-hosted videos.
- Home
- Drupal Documentation
- Creating modules for Drupal
- Creating block in Drupal module programmatically
Submit configuration form in block
Menu
- Understanding Drupal
- Drupal System Requirements
- Installing Drupal 8
- Drupal 8 Update
- Drupal Site Administration
- Drupal 8 Modules
- Drupal Modules Comparison
- Drupal Themes
- Drupal field types
- Configuration Management
- Multisite Drupal
- Accessibility Features
- Troubleshooting in Drupal
-
Creating modules for Drupal
- Getting started - Drupal technical documentation
- Create Drupal module outline
- Naming and placing your Drupal module
- Mention Drupal about your module using .info.yml file
- Add composer.json file
- Output "Hello World" on page using Drupal module
- Adding main controller
- Add routing file
- Add a menu link
- Go next
- Add configuration for default values
- Enable default configuration in your Drupal 8 module
- Practical Guide to Creating Basic Modules in Drupal 8
- Drupal module structure
- Drupal configuration form
- Defining and Using Your Own Configuration in Drupal
- Create page in Drupal programmatically
- Creating block in Drupal module programmatically
- Creating Field Types, Widgets, and Formatters in Drupal
- Event Subscriber and Event Dispatcher. Working with events in Drupal
- Creating image style for Views in Drupal
- Adding template in Drupal module for theming
- Add CSS and JavaScript in Drupal module
- Testing Drupal module
- Publish your module on drupal.org
- Understanding hooks
- Drupal 8 API
- Theming in Drupal
- Upgrade to Drupal 11
Add the following method to the HelloBlock class. In this example, it's located in the src/Plugin/Block/HelloBlock.php file, but as you start thinking in a more OOP-oriented way, where it's physically located in the file structure is less important than the namespace. If you're a savvy OO programmer, you'll keep both closely aligned. But just in case, the namespace—very similar to the module's folder name and machine name from our earlier discussion—will be important later when you want to interact with your module’s code programmatically.
/**
* {@inheritdoc}
*/
public function blockSubmit($form, FormStateInterface $form_state) {
$this->configuration['hello_block_name'] = $form_state->getValue('hello_block_name');
}
If you have a fieldset wrapper around the form elements, you should pass an array to the getValue() function instead of just the field name. Here, myfieldset is the fieldset that wraps the hello_block_name field.
$this->configuration['hello_block_name'] = $form_state->getValue(['myfieldset', 'hello_block_name']);
Adding this code means the form will be processed and the form input will be saved to the configuration for this specific block instance, independently of other block instances. However, the block still doesn’t use the updated configuration result. That’s on the next page of the book.