Drupal 8でカスタムコンテンツを使用してカスタムブロックを作成したいのですが、最初に単純なテキストだけでブロックを作成し、正しく動作します。私の問題は、カスタム変数をそれに渡す方法ですか?私はそれについてのいくつかのチュートリアルを見ました、私のモジュール名はでtcdev
あり、これは.module
ファイルの内容です。
function tcdev_theme($existing, $type, $theme, $path) {
return array('tcdev' =>
array(
'variables' => array(
'title' => 'Default title',
'description' => null
),
'template' => 'block--sliderblock'
)
);
}
と私 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'
);
}
}
そして最後に私のテンプレートファイル block--sliderblock.html.twig
<h2>My Custom Block{{ title }}-{{ description }}</h2>
ただし、結果は「My Custom Block-」のみです。 問題は、変数がテンプレートファイルに渡されないことです。
助けてくれてありがとう
block--sliderblock.html.twig
レンダリングされた場合、問題はどのように私の変数をそれに渡すかです!!!?私のコードによると、あなたは私に何を提案しますか。?あなたの注意のためのtnx