【发布时间】:2011-06-05 16:25:06
【问题描述】:
我为 Drupal 7 创建了一个模块,它有一个 hook_theme 函数,告诉它使用 usertemp.tpl.php 模板。我将模板放在模块文件夹和主题文件夹中。问题是该功能仅从模块文件夹中获取模板,而不是从主题文件夹中获取模板。我已经反复清除缓存并寻找以前的答案,但没有任何帮助。可能是什么问题?
我的 hook_theme 代码如下所示:
function usuar_theme() {
return array(
'usuarbuild' => array(
'variables' => array('profilesloaded' => array()),
'template' => 'usertemp',
),
);
}
剩下的模块代码是这样的:
function usuar_menu() {
$items['userx'] = array(
'title' => 'User page',
'description' => 'User page',
'page callback' => 'usuar_exe',
'access callback' => TRUE,
'type' => MENU_CALLBACK,
);
return $items;
}
function usuar_exe($id) {
$ar = array('uid' => $id, 'profilesloaded' => profile2_load_by_user($id));
return theme('usuarbuild', array('collected' => $ar));
}
function theme_usuarbuild($variables) {
return $variables['collected'];
}
【问题讨论】:
-
对我来说看起来不错,你能在模块中包含你用来调用模板的代码吗?
-
我以为这是用来调用模板的代码,不是吗?你的意思是自定义主题函数和页面回调?
-
我已经用其余的模块代码编辑了我的主要帖子。感谢您的帮助!
标签: drupal drupal-modules drupal-7 drupal-themes