2

有什么方法可以将模板分配给我的自定义模块。我听说这可能是可能的。我尝试了 hook_theme 函数。我的 hook_theme 看起来像这样

    function special_theme() {
return array(
    'special' => array(
      'template' => 'special',
      'arguments' => array('link' => NULL),
    ),
  );
}

我的模块文件夹中有一个 special.tpl.php 文件。但是没有调用 tpl 文件。它是我的默认模板,显示为输出。有人可以在正确的方向上帮助我。会很有帮助。

4

1 回答 1

1

您定义hook_theme()的内容是一个可用的模板,而不是自动使用的模板。为了使用该模板,您需要调用theme('special', $link);.

还建议避免在主题名称中使用简单的单词以避免冲突(mymodule_special改为尝试)。

另请注意(虽然是基本的),您还需要print的返回值theme(),它不会自动打印。例如,

print theme('special', $link);
于 2013-05-17T12:00:31.023 回答