【发布时间】:2016-12-16 10:39:40
【问题描述】:
如何在 twig 文件中获取 drupal 安装的基本路径?
例如我需要得到http://localhost/drupal/。
我试过了
{{ base_path }}
但它返回的是空的。
{{ directory }}
这是返回主题路径。但我需要基本路径来完成 url。有没有办法做到这一点?
【问题讨论】:
如何在 twig 文件中获取 drupal 安装的基本路径?
例如我需要得到http://localhost/drupal/。
我试过了
{{ base_path }}
但它返回的是空的。
{{ directory }}
这是返回主题路径。但我需要基本路径来完成 url。有没有办法做到这一点?
【问题讨论】:
@Ditto P S 要在 twig 上获取基本路径,您可以在预处理中的 .theme 文件中声明一个变量
然后在 twig 中简单地使用 'base_path_success' 变量作为
{{ base_path_success }}
您可以在任何预处理过程中声明变量,例如
function ttnd_preprocess_node(&$variables) {}
或
function ttnd_preprocess_block(&$variables) {}
这里 ttnd 是主题名称。
欲了解更多信息,您可以使用以下链接
https://drupal.stackexchange.com/questions/205289/base-path-drupal-8
【讨论】:
您可以直接从getHost() 请求中获取主机名“localhost/drupal/”:
$host = \Drupal::request()->getHost();
在某些情况下,您可能还想获取架构,fx http://localhost/drupal/:
$host = \Drupal::request()->getSchemeAndHttpHost();
【讨论】: