Ich möchte meinen benutzerdefinierten Block mit benutzerdefiniertem Inhalt in Drupal 8 erstellen. Zu Beginn erstelle ich einen Block mit nur einfachem Text und arbeite ordnungsgemäß. Mein Problem ist, wie ich meine benutzerdefinierte Variable an ihn übergeben kann. Ich habe ein Tutorial darüber gesehen, mein Modulname ist tcdev
und dies ist der Inhalt der .module
Datei.
function tcdev_theme($existing, $type, $theme, $path) {
return array('tcdev' =>
array(
'variables' => array(
'title' => 'Default title',
'description' => null
),
'template' => 'block--sliderblock'
)
);
}
und mein SliderBlock.php
namespace Drupal\tcdev\Plugin\Block;
use Drupal\Core\block\BlockBase;
/**
* Provides a 'SliderBlock' block.
*
* @Block(
* id = "slider_block",
* admin_label = @Translation("Slider Block"),
* )
*/
class SliderBlock extends BlockBase{
/**
* {@inheritdoc}
*/
public function build(){
return array(
'#title' => 'my title ',
'#description' => 'my custom desc'
);
}
}
und schließlich meine Vorlagendatei block--sliderblock.html.twig
<h2>My Custom Block{{ title }}-{{ description }}</h2>
Das Ergebnis ist jedoch nur "My Custom Block-". Das Problem ist, dass Variablen nicht an die Vorlagendatei übergeben werden. Wo liegt mein Fehler?
schätzen jede Hilfe
block--sliderblock.html.twig
gerendert, das Problem ist, wie ich meine Variable an sie weitergebe !!!? Was schlagen Sie mir gemäß meinem Code vor? ? tnx für Ihre Aufmerksamkeit