Drupal 8如何将值传递给菜单树枝模板

时间:2016-09-10 16:03:39

标签: drupal twig drupal-8

我是Drupal的新手,我想通过域名网址在menu.html.twig模板中使用。我怎样才能做到这一点。实际上我有一个5个域的菜单都指向同一个Drupal实例。基于域名,我想让菜单处于活动状态。

由于

2 个答案:

答案 0 :(得分:3)

由于OP对Drupal不熟悉,因此扩大了Artreaktors的答案。

使用您想要的任何名称创建一个模块。如果您需要帮助,请查看Drupal Console,它将为您提供帮助。

在模块的文件夹中,您将找到module_name.module文件。

在这里,您将添加Artreaktor提供的代码:

function mymodule_preprocess_menu(&$vars) {
  $domain = \Drupal::service('domain.negotiator')->getActiveDomain();
  $vars['domain'] = $domain->getUrl();
}

mymodule在这里代表你模块的名称。别忘了启用模块并清除缓存!

答案 1 :(得分:2)

你可以在hook_preprocess_hook(& $ vars)中完成。

function mymodule_preprocess_menu(&$vars) {
  $domain = \Drupal::service('domain.negotiator')->getActiveDomain();
  $vars['domain'] = $domain->getUrl();
}

现在,您可以在树枝中使用{{domain}}变量。

相关问题