Drupal 6 drupal 6----为什么主题()可以';t输出
我放在mytheme template.php中的代码Drupal 6 drupal 6----为什么主题()可以';t输出,drupal-6,module,themes,Drupal 6,Module,Themes,我放在mytheme template.php中的代码 function mytheme_theme(){ return array( 'mytheme_example' => 'example', 'argument' => array('myvar' => null), ); } 我放在node.tpl.php中的代码 <?php $html = ""; $myvar = "hello,world
function mytheme_theme(){
return array(
'mytheme_example' => 'example',
'argument' => array('myvar' => null),
);
}
我放在node.tpl.php中的代码
<?php
$html = "";
$myvar = "hello,world";
$html .= theme('mytheme_example', myvar);
return $html;
?>
我放在example.tpl.php中的代码
<div>
here is the <b><?php print myvar; ?></b>being created.
</div>
下面是正在创建的。
我已经清除了缓存,但是在node文章的页面上,没有任何关于hello world的输出
ps:哪些文件我可以使用hook_主题,template.php,模块文件。有任何文件可以使用这个钩子吗?看起来您已经在template.php中正确声明了钩子主题,所以我认为这不是问题所在 我确实发现了node.tpl.php的语法问题,如果不是:
<?php
$vars = array('myvar' => 'hello, world');
$html = theme('mytheme_example', $vars);
return $html;
?>
注意,关联数组和“myvar”(hook_主题中声明的变量)作为键传入
另一点,标准做法是将模板文件命名为与钩子名称相同的名称,因此我建议调用模板mytheme-example.tpl.php
有关更多信息,请参见。我不知道您是否已经解决了该问题 我会尝试以这种方式宣布我的主题:
function mytheme_theme(){
return array(
'mytheme_example' => array(
'arguments' => array('arguments'=>array()),
'template' => 'example',
),
}
这是我通常的做法,它在我身上运行良好。我已更改了您指出的错误。但仍然无法输出$myvar的值。我已更新解决方案以反映关联数组,因为我相信这是一个问题。我已尝试了您的代码,但仍然没有任何输出。您可以在本地环境中测试我的代码吗。非常感谢。