小枝テンプレートでプログラムでブロックをレンダリングする
page.html.twigテンプレートでビューブロックをレンダリングする必要があります。D7ではこれを行います。 <?php $block = module_invoke('module_name', 'block_view', 'block_delta'); print render($block['content']); ?> Drupal 8では、module_invokeは非推奨であり、これを使用することをお勧めします(ブロックの名前を2番目のパラメーターとして追加しました)。 Drupal::moduleHandler()->invoke($block, 'views_block__blog_block_1', $args = array()); いくつか試してみました。最初に小枝テンプレートでそれをやろうとしましたが、小枝テンプレートでphp関数を呼び出す方法がわかりませんので、あまりうまくいきませんでした。 次に、.themeファイルのpreprocess_page()関数で関数を呼び出しましたが、動作させる前に、Twigテンプレート内で変数を動作させるために簡単なものを試してみましたが、どちらも動作しませんでした: .themeファイルのtemplate_preprocess_page(&$ vars)関数で: $test = 'Hello World'; $vars['$my_var'] = $test; Twigテンプレート内でmy_varを呼び出そうとしましたが、機能しませんでした。「サイトにエラーがあります。管理者に連絡してください」というエラーメッセージが表示されました。 要約すると、ここに私の質問があります: Twigテンプレート内で変数を使用可能にするにはどうすればよいですか? Twigテンプレート内で関数を呼び出すにはどうすればよいですか? .themeファイルまたはtwigテンプレート内にブロックをレンダリングしますか?