我有什么方法可以将模板分配给我的自定义模块。我听说它可能。我尝试使用hook_theme函数。我的hook_theme看起来像这样
function special_theme() {
return array(
'special' => array(
'template' => 'special',
'arguments' => array('link' => NULL),
),
);
}
我的模块文件夹中有一个special.tpl.php文件。但是没有调用tpl文件。它是我的默认模板,显示为输出。有人可以帮我正确的方向。会非常有帮助的。
答案 0 :(得分:1)
您通过hook_theme()
定义的内容是可用模板,而不是自动使用的模板。要使用该模板,您需要致电theme('special', $link);
。
还建议避免对主题名称使用简单的单词以避免冲突(请尝试mymodule_special
)。
另请注意(尽管是基本的),您还需要print
theme()
的返回值,它不会自动打印。例如,
print theme('special', $link);