【发布时间】:2011-12-05 21:22:00
【问题描述】:
我想做的是在模块中生成一些原始输出。
我想将一组数据传递给模板文件,然后使用该数据填充模板中的代码。模板由我的主题文件夹中的一个文件表示。
我为某个 URL (/itunes) 设置了一个挂钩:
$items['itunes'] = array(
'page callback' => 'itunespromo_buildpage',
'type' => MENU_SUGGESTED_ITEM,
'access arguments' => array('access content'),
);
..在 itunespromo_buildpage 内...
function itunespromo_buildpage() {
//grab some data to pass through to template file, put into $promo_data
$details = theme('itunes_page', array(
'promo_data' => $promo_data,
));
return $details;
}
这里是 hook_theme():
function itunespromo_theme() {
return array(
'itunes_page' => array(
'template' => 'itunes_page',
),
);
}
在我的主题的 template.php 中:
function geddystyle_itunes_page($vars) {
return print_r($vars['promo_data'], true);
}
现在,$promo_data 被很好地传递,它被 print_r'd 打印到结果页面上。但是,我想在我的 itunes_page.tpl.php 模板文件中使用这个 $promo_data 变量。
我可以肯定我就在附近。我是否应该调用某种渲染函数并将 $promo_data 变量从函数 itunespromo_theme() 传递给它?
【问题讨论】:
-
您使用的是什么版本的 Drupal?
标签: drupal drupal-modules