如何使用.tpl
文件覆盖主题功能?我知道如何使用主题函数覆盖.tpl
文件,但不是相反。我似乎无法找到告诉我的任何地方,所以也许这是不可能或不好的做法。
例如,如果在名为super_results
的模块中定义了主题函数并在主题注册表中注册,如下例所示,我将如何使用super_results.tpl.php
覆盖它。
'super_results' => array(
'arguments' => array('title' => NULL, 'results' => NULL, 'votes' => NULL),
),
function modulename_super_results($title, $results,$votes){ output HTML }
答案 0 :(得分:3)
最简单的解决方案可能是创建一个使用模板的新主题函数。这样的事情应该有效,免责声明代码未经测试。
function my_theme_theme() {
return array(
'overide' => array(
'template' => 'elm-super_results',
'arguments' => array('title' => NULL, 'results' => NULL, 'votes' => NULL),
),
);
}
function my_theme_super_results($title, $results, $votes) {
return theme('overide', $title, $results, $votes);
}