Dodanie bloku do modułu w Drupalu 8
Pokażę jak programowo dodać blok w module. Więcej na temat podstaw tworzenia modułu w Drupalu 8. Dziś będziemy rozbudowywać poprzedni moduł.
<?php namespace Drupal\first_module\Plugin\Block; use Drupal\Core\Block\BlockBase; class HelloBlock extends BlockBase { }Kolejną nową koncepcją w Drupalu, której musimy użyć w przypadku bloku, są Adnotacje (Ci co mieli do czynienia z Symfony 4 zapewne wiedzą o co chodzi). Aby Drupal mógł znaleźć Twój kod blokowy, musisz zaimplementować komentarz do kodu w określony sposób, zwany Adnotacją. Dodaj komentarz do klasy tak jak na listingu poniżej.
namespace Drupal\first_module\Plugin\Block; use Drupal\Core\Block\BlockBase; /** * Provides a 'Hello' Block * * @Block( * id = "hello_block", * admin_label = @Translation("Hello block"), * ) */ class HelloBlock extends BlockBase { }Następnie musimy odziedziczyć komentarze po klase bazowej oraz dodać metodę build, która zwróci zawartość bloku.
class HelloBlock extends BlockBase { /** * {@inheritdoc} */ public function build() { return array( '#markup' => $this->t('Hello, World!'), ); } }Teraz musisz wyczyścić pamięć podręczną. Aby dodać blok do regionu, przejdź do strony administratora bloków.