0

我使用以下代码为图像创建了一个自定义字段模板 - field--field_images.tpl.php:

<?php $url = file_create_url($field_images['uri']);
$url = parse_url($url);
$imglink = $url['path'];
?>
<div id="slideshow">
<?php foreach ($items as $delta => $item): ?>    
<div data-thumb="<?php print render($imglink); ?>" data-src="<?php print render($imglink); ?>" data-time="1500" data-trasPeriod="4000" data-target="_blank" ></div>           
<?php endforeach; ?>
</div>

当前 $imglink 返回根文件夹“www”的值。我需要它来返回与字段关联的图像文件的路径,例如“ http://www.mysite.com/sites/default/files/image.jpg ”,对此的任何帮助将不胜感激。

更新:

我想我快到了。这是我的 field-field_images.tpl.php 文件中的代码: <?php foreach ($items as $delta => $item): ?>
<div data-thumb="<?php $img_src = $element['#object']->field_images['und'][0]['uri']; $link = image_style_url('thumbnail', $img_src); print ($link); ?>" data-src="<?php $img_src = $element['#object']->field_images['und'][0]['uri']; $link = file_create_url($img_src); print ($link); ?>" data-time="1500" data-trasPeriod="4000" data-target="_blank" ><?php render($item); ?></div>
<?php endforeach; ?>

你可以在这里看到输出:http: //www.kfpa.co.za/dev/?q=node/2

一个问题是它循环并为上传的图像创建正确数量的元素,但是当它创建 URL 时,它只是为“x”指定的项目创建,<?php $img_src = $element['#object']->field_images['und'][x]['uri'];即如果我将“x”更改为“2” ' 第三张照片显示。如何更改此代码,以便在循环中找到相应图像的正确 URL?

4

1 回答 1

0

如果你有一个 uri,你可以使用image_style_path()来创建图像路径(如果需要,特定于样式)。

编辑:获取原始图像路径使用file_create_url($uri)

于 2013-07-05T22:24:58.170 回答