Drupal 7.在'node.tpl.php'中,我如何限制和抵消结果?

时间:2012-12-06 16:54:59

标签: php drupal limit field

道歉,新手Drupal问题警告:

目标:将我输出的自定义字段图片列表拆分起来,以便我可以区别对待它们。

即。在我的node.tpl.php中,使用滑块中的前3个(最近的节点)图像。然后列出其余部分(抵消前三个)就像普通图像一样。

但是我找不到如何限制我的结果。在我的节点模板中,我可以使用以下内容设置我的所有图像:

<a href="<?php $nodeurl = url('node/'. $node->nid); echo $nodeurl; ?>"
 <img src="<?php print render (file_create_url($node->field_featured_image['und'][0]['uri'])); ?>" alt="<?php echo $title; ?>" />
</a>  

但我如何限制结果呢?我想这可以忽略前3个结果:

<?php foreach($node->field_featured_image as $k=>$v){
  if ($k < 3) continue;
  print render (file_create_url($node->field_featured_image['und'][0]['uri']));
 }
?>

但是node.tpl中的不是因为node.tpl似乎是一个循环所以上面的代码被循环并且数组键永远不会超过0.

我认为:/

我是否因为对模板的基本误解而离开这里?

任何指针都表示赞赏。拼命想坚持使用drupal但发现它很难。

1 个答案:

答案 0 :(得分:1)

我可能会因你想要完成的事情而误导,但你可能不需要闯入node.tpl.php了。

如果您没有使用Views,请从此开始。 如果您正在尝试构建滑块,请使用Views Rotator。 如果您想要一些可以放入的东西,请使用Enterprise Rotator。 (基本上已经构建了视图旋转器和横幅幻灯片内容类型。)

您可以使用寻呼机选项来偏移图像,以显示特定数字,并偏移排队的图像数量。

或者,如果您只想使用特定图片,请使用Nodequeue。创建一个简单队列,添加包含所需图像的节点,然后在View中创建一个与节点队列相关的关系(标记为必需)。