Drupal 7 - 如何从模块加载模板文件?
我正在尝试在 Drupal 7 中构建自己的模块。
所以我在 Moon_page() 函数中创建了一个名为“moon”的简单模块
function moon_menu() {
$items = array();
$items['moon'] = array(
'title' => '',
'description' => t('Detalle de un Programa'),
'page callback' => 'moon_page',
'access arguments' => array('access content'),
'type' => MENU_CALLBACK
);
return $items;
}
function moon_page(){
$id = 3;
$content = 'aa';
}
,我喜欢从主题文件加载自定义模板“moon.tpl.php”。
这可能吗?
I am trying to build my own module in Drupal 7.
So I have created a simple module called 'moon'
function moon_menu() {
$items = array();
$items['moon'] = array(
'title' => '',
'description' => t('Detalle de un Programa'),
'page callback' => 'moon_page',
'access arguments' => array('access content'),
'type' => MENU_CALLBACK
);
return $items;
}
function moon_page(){
$id = 3;
$content = 'aa';
}
in moon_page() function, I like to load a custom template 'moon.tpl.php' from my theme file.
is this possible?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
对于您自己的东西(不覆盖另一个模块的模板)?
当然,您只需要:
使用 hook_theme()
调用 theme('moon', $args)
$args 是一个数组,其中包含由 hook_theme() 实现指定的模板。
For your own stuff (not overriding a template from another module)?
Sure, you only need to:
Register your template with hook_theme()
Call theme('moon', $args)
$args is an array that contains the arguments to the template as specified by your hook_theme() implementation.
对于 Drupal 7,它对我不起作用。我替换了 hook_theme 中的行
,现在它对我有用。
For Drupal 7, it did not worked for me. I replaced line in hook_theme
and now it is working for me.
在 drupal 7 中,我在使用时遇到以下错误:
return theme('moon', $content);
导致“致命错误:drupal_install\includes\theme.inc 在线不支持的操作数类型” 1071"
使用以下方法修复了此问题:
theme('moon', array('content' => $content));
In drupal 7 I was getting the following error when using :
return theme('moon', $content);
Was resulting in "Fatal error: Unsupported operand types in drupal_install\includes\theme.inc on line 1071"
This was fixed using :
theme('moon', array('content' => $content));
您可以使用 Moon_menu 和 hook_theme
You may use moon_menu, with hook_theme