在我的模块中,我想输出节点预告片。该节点具有CCK字段,我希望它们能够根据您在内容类型/字段设置管理区域中选择的可见性设置进行显示。
但是当我这样做时:
$html = theme('node', $n);
生成的预告片不会包含CCK字段,只包含标题和正文。
我需要调用哪些其他主题功能?
该节点包含图像和节点引用等字段。我想我可以手动编写HTML,但在我看来最好使用提供的主题函数......
答案 0 :(得分:5)
http://api.drupal.org/api/function/node_view/6
$node = node_load($n);
$html = node_view($node,TRUE);
然后您可以选择要在内容类型>显示字段上显示的字段,之后您可以通过contemplate module或 node-content_type.tpl编辑该预告片的主题.php 在主题文件夹上。
答案 1 :(得分:0)
答案 2 :(得分:0)
此外,从代码中使用node_view允许总共4个节点模板模式。
node_view($node, $teaser = FALSE, $page = FALSE, $links = TRUE)
对于疯狂的节点,我有这样的模板......
<?php
switch(true){
case($page && $teaser): ?>
<div class="content">
<?=$content?>
</div>
<?php
break;
case($page && !$teaser): ?>
<div class="content">
<?=$content?>
</div>
<?php
break;
case(!$page && $teaser): ?>
<div class="content">
<?=$content?>
</div>
<?php
break;
case(!$page && !$teaser): ?>
<div class="content">
<?=$content?>
</div>
<?php
break;
default: print 'this should never happen.';
}?>