【发布时间】:2014-04-02 08:07:14
【问题描述】:
由于某种原因,每次我刷新页面时都会多次调用此函数,因此会多次渲染页面。这会导致加载时间过长(该函数包括对 DB 的调用),我怎样才能将对该函数的调用减少到最低限度? 谢谢。
【问题讨论】:
-
Drupal 中的钩子函数被多次调用是正常的——这就是系统工作的方式。要么找到一个更具体的钩子,要么查看传递给它的参数,使其仅在需要时执行某事(对所有其他调用不执行任何操作)。
-
好的,那么我可以使用哪个钩子来设置模板变量一次?坦克
-
发现该钩子被其他钩子无故调用,导致函数不必要的运行。我找到的解决方案是使用与以前相同的钩子,但在开始时检查谁是调用钩子 - if ($hook == "block" || $hook == "views_view_fields" || $hook == " views_view_unformatted" || $hook == "views_view" || $hook == "lead_form" || $hook == "page")) { return; }
标签: php drupal drupal-6 drupal-theming