以编程方式在树枝模板中渲染块
我需要在page.html.twig模板中呈现一个views块。在D7中,我会这样做: <?php $block = module_invoke('module_name', 'block_view', 'block_delta'); print render($block['content']); ?> 在Drupal 8中,不建议使用module_invoke,建议使用它:(我已经添加了块的名称作为第二个参数) 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; 我试图在树枝模板中调用my_var,但是它不起作用,并且收到一条错误消息,提示“该站点有错误,请与管理员联系”。 因此,总而言之,这是我的问题: 如何使变量在树枝模板中可用? 如何在树枝模板内调用函数? 是否在.theme文件或树枝模板内渲染块?