1

我使用自定义内容类型在 Drupal 中创建了一个简单的图库。它实际上只是一篇带有图像字段的文章,可以有无限数量的项目。我已经为这种内容类型(node--gallery.tpl.php)和整个页面创建了一个自定义模板,我对外观和感觉很满意。

我坚持的一件事是只显示预告片中的前几张图片。我只想显示预告片中的第一行图像(前 3 张图像)。在模板文件中,$content['field_images']包含画廊的所有图像,但print render($content['field_images']输出所有图像(如我所料)。

那么,如何让 Drupal 只输出前三个项目$content['field_images']?我感兴趣的一个改进是如何让 Drupal 输出 3 个随机图像,尽管如果我知道如何减少渲染图像的数量,我相信我可以自己解决这个问题。

4

2 回答 2

2

与其做一个 var_dump 或迭代数组,为什么不安装 devel 模块并使用它的 dpm() 函数,它可以提供很好的输出。

于 2011-03-30T22:26:02.387 回答
1

在您的模板中,找到其中包含图像文件名的适当数组结构。如果在 中找不到$content,请查看 var_dump 的输出$node。编写一个for循环来迭代前三个项目,并为这些项目中的每一个调用theme_image()或者如果您有要使用的图像样式,则调用 theme_image_style()。使用从数组中检索到的文件名传入适当的配置数组。

于 2011-02-07T15:01:56.440 回答