即使当前语言不是英语,我也必须使用英语为给定节点生成路径别名。
我尝试了不同的方法:
path('entity.node.canonical', {'node': node.id}, {'language': lang_en})
其中lang_en是语言对象:
$variables['lang_en'] = \Drupal::languageManager()->getLanguage("EN");
我尝试在路径函数中使用“ langcode”选项:
path('entity.node.canonical', {'node': node.id}, {'langcode': 'en'})
但是这些都不起作用。我仍然得到当前的语言路径:/ it / node / 1234
怎么了? 谢谢
我终于使用语言对象进行管理。我使用了错误的大写语言代码,因此对象lang_en为空。这有效:
$variables['lang_en'] = \Drupal::languageManager()->getLanguage("en");
然后在树枝文件中:
{{path('entity.node.canonical', {'node': node.id}, {'language': lang_en})}}