预处理drupal模板中的进程函数

时间:2011-05-19 21:05:27

标签: drupal-7 drupal-theming

之间有什么区别
function mythemes_preprocess_html(&$variables) { ... }

function mythemes_process_html(&$variables) { ... }

在drupal 7 template.php。

何时必须使用预处理函数,何时必须使用过程函数。

感谢。

3 个答案:

答案 0 :(得分:12)

它们实际上是相同的,尽管在不同的阶段被称为。首先调用预处理函数并进行更改。然后在稍后阶段调用过程函数,并允许进行更改以更改在预处理阶段引入的任何修改。

有关详细信息,请参阅http://drupal.org/node/223430

答案 1 :(得分:1)

更准确地说,来自Drupal API文档:

  

如果实现是模板文件,则在调用模板文件之前调用几个函数来修改$ variables数组。它们属于“预处理”阶段和“处理”阶段,并按以下顺序执行(如果存在)(请注意,在以下列表中,HOOK表示主题钩子名称,MODULE表示模块名称,主题表示主题名称,ENGINE表示主题引擎名称):(来源:http://api.drupal.org/api/drupal/includes!theme.inc/function/theme/7

如果您按照上面的链接,它将按顺序列出整个主题()进程,从过程函数到预处理函数到模板文件本身。

答案 2 :(得分:0)

您希望影响哪个阶段的过程,为此有两个选项:

  1. 预处理功能:首先运行。
  2. 处理功能:在所有预处理功能完成后运行 执行。
相关问题