Drupal页面标题栏
答
以下可能会对您有所帮助。首先即时为page_title添加一个主题建议,以便我可以控制必须骑在模板上的位置。我正在添加node_type - 作为模板的后缀。
然后我加入预处理功能 - 确保你与你想要的“新闻”的结尾应该从第一功能的内容类型代替类型更换签名。
在第二个功能我正在取一个叫字幕领域,并增加值变量,以便它是在模板中可用。
function mytheme_theme_suggestions_alter(array &$suggestions, array &$variables, $hook) {
if($hook === 'page_title') {
if($node = \Drupal::routeMatch()->getParameter('node')){
$node_type = $node->getType();
// suggestion must use _ and __ as per convention.
$suggestions[] = 'page_title__'.$node_type;
}
}
}
function mytheme_preprocess_page_title__news(&$variables) {
if ($node = \Drupal::routeMatch()->getParameter('node')) {
try {
if ($node->get('field_subtitle') && !$node->get('field_subtitle')->isEmpty()) {
$variables['sub_title'] =
$node->get('field_subtitle')
->get(0)
->get('value')
->getValue();
}
}catch(Exception $e){
\Drupal::logger('mytheme')->error($e);
}
}
}
现在在模板中,你会在模板文件sub_title可用,在我的情况下,它是网页标题 - news.html.twig - 从页面title.html.twig复制并添加相应的变量。
任何事情都是可能的。你能显示你试过的代码吗? –
我刚刚尝试使用这样的树枝:{{node.field_image.title}}(标题来测试),只是在字段 - 节点 - title.html.twig。我不知道这是否是最好的方法来做出这个... Thks的快速响应;) –
我刚刚意识到你正在使用Drupal。我对Drupal不熟悉。也许别人可以提出一些建议? –