问题描述
|
(对不起,这是一个模糊的问题。我试图更清楚地表示
[and indeed to be more code-oriented]
的尝试失败了……):-/
//
我已经安装了Firebug for Drupal模块,并且我注意到它表明我显然在没有明显原因的情况下在每个页面上加载了相同的八个节点对象。这些都是相同的内容类型(站点使用许多其他内容类型)。
看来它们实际上是该一种内容类型的所有节点,但那些由开发人员模块作为虚拟内容生成的节点除外。
我已经多次刷新了缓存。
有没有办法弄清楚这些节点是从哪里加载的???
解决方法
安装devel.module,在node_load()函数内添加“ 1”。重新加载该站点。现在,您应该看到8个可浏览的回溯,它们将告诉您哪个函数调用node_load()。
, 大概,您可能有一个块(从视图或模块中),该块正在每个请求中查询那些节点。
http://heydon.com.au/node/1044对此行为做了简短介绍。如果是这样,解决方法是从已渲染的区域中删除该块,或将其配置为仅在要运行它的页面上显示(并因此渲染)。
Drupal缓存应防止匿名用户运行这些查询(当然,这取决于缓存和阻止设置)。
, 我曾经在不需要重复调用node_load()的第三方模块中发生过这种情况。我建议您禁用所有第3方模块,重试节点加载并逐个重新启用它们,直到发现行为异常的模块。
祝好运!