gpt4 book ai didi

drupal 的 hook_preprocess_page 未按预期工作

转载 作者:行者123 更新时间:2023-12-01 00:04:48 24 4
gpt4 key购买 nike

我遇到了一个问题,即 hook_preprocess_page 对 &$variables 的更改未呈现,即使它是 $theme_registry['page']['preprocess functions'] 下的最后一项。将 $variables 的内容记录到文件显示内容已更改,但内容在站点上显示未更改。刷新了 Drupal 上的所有缓存,刷新了所有浏览器缓存,结果仍然相同。

/**
* Implementation of hook_preprocess_page().
*/
function grinchlist_preprocess_page(&$variables) {

if (grinchlist_usercheck($variables['user']['uid'])) {
$variables['scripts'] = preg_replace('/<script[^>]*christmas_snow.*<\/script>/','',$variables['scripts']);
}
file_put_contents('/tmp/vars.txt',print_r($variables,true));
}

/tmp/vars.txt 正确显示变量,但浏览器仍显示正在加载的脚本。

这可能是一个愚蠢的例子,但我在其他情况下遇到了 hook_preprocess_page 这个问题,它真的有助于理解这里发生了什么......

谢谢。

最佳答案

报告的代码包含错误。 IF 语句应该从

if (grinchlist_usercheck($variables['user']['uid'])) {
// ...
}


if (grinchlist_usercheck($variables['user']->uid)) {
// ...
}

我正在使用 hook_preprocess_page()one of my modules ,并且被调用的函数确实改变了变量的内容。

然后,正如 Richard M 报告的那样,该函数应该从 drupal_get_js() 获取包含的 JavaScript 文件的列表。 .

关于drupal 的 hook_preprocess_page 未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1954991/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com