如何使用PHP从单个Drupal节点获取多个图像

时间:2013-06-27 01:32:05

标签: php arrays drupal drupal-7

我在Drupal中有一个自定义内容类型,允许通过单个字段上传多个图像。我想以编程方式访问图像URI,应用我的主题,然后逐个获取输出。我可以用一个像这样的图像来做到这一点,

<?php
$image_style_name = 'my_theme';
$image_uri  = $entity->field_image['und'][0]['uri'];
$image = theme('image_style', array('style_name' => $image_style_name, 'path' => $image_uri));

$image = image_style_url($image_style_name, $image_uri); ?>

但我不确定如何访问整个图像阵列。

对于任何需要它的人......完整的解决方案:

<?php
$image_style_name = 'my_theme';

foreach($entity->field_image['und'] as $key => $value){
$image_uri  = $entity->field_image['und'][$key]['uri'];
$image = theme('image_style', array('style_name' => $image_style_name, 'path' => $image_uri));
$output = image_style_url($image_style_name, $image_uri);    
echo $output;
}
?>

1 个答案:

答案 0 :(得分:1)

它们应该在$entity->field_image['und']数组中,因此您应该能够使用类似

之类的内容遍历数组和主题
foreach($entity->field_image['und'] as $image_field){
  ..etc
}