Drupal8 在 page.html.twig 上输出站点名称我们可以用 template_preprocess_page() 函数把站点名称的变量先加入到 page 的 variables 中。

/**
 * 请把yourtheme替换为您的主题名称
 */
function yourtheme_preprocess_page(array &$variables) {
  // Load the site name out of configuration.
  $config = \Drupal::config('system.site');
  $variables['site_name'] = $config->get('name');
  $variables['site_slogan'] = $config->get('slogan');
}

然后我们在 page.html.twig 上输出站点名称的变量:

{# page.html.twig #}
<h4>{{ site_name }}</h4>

如下则输出了我们在 yourtheme_preprocess_page() 中定义的 slogan 变量:

{# page.html.twig #}
<p>{{ site_slogan }}</p>

同理,如果我们想在 node 页面的 twig 模板上直接调用站点名称的变量,我们需要使用 template_preprocess_node() 来提前定义好站点名称的变量。