【发布时间】:2019-12-28 17:26:44
【问题描述】:
我创建了一个文章列表视图,其视图模式为“Teaser Full Width”。该页面看起来不错,并且列出了文章。当我尝试使用 template_preprocess_node(&$variables) 编辑某些内容时,钩子在 Teaser Full Width 中不起作用。但是当我单击任何文章时,单个节点中的相同工作。
<?php
function templatename_preprocess_node(&$variables) {
kint($variables);die('test');
}
?>
我已经在 StackOverflow 中解决了不同的问题。
- 开发模块已启用。
- 尝试使用条件
if ($variables['view_mode'] == 'teaser_full_width'){ ... } - 尝试使用
print_r而不是kint。 - 尝试更改
max_allowed_packet。 - 已验证
templatename已启用并设置为默认值。 - 缓存已清除。
(文章列表页面)模板文件:-node--article--teaser-full-width.html.twig
template_preprocess_html 在此页面上运行良好。
template_preprocess_node 不在此页面上工作。
(文章单页)模板文件:-node--article--full.html.twig
两个钩子都工作正常。
有谁知道问题出在哪里?我的 drupal 版本是 8.6.10。
【问题讨论】:
标签: php drupal module drupal-8 preprocessor