您好我正在尝试在我的WordPress中创建灯箱库,我设法让大部分代码都能很好地从图库中抓取图像。但是我不知道如何获取原始文件的URL ....
PHP
<?php $post_content = get_the_content();
preg_match('/\[gallery.*ids=.(.*).\]/', $post_content, $ids);
$array_id = explode(",", $ids[1]);
$item = 0;
while ($array_id[$item] != ''){
if($item == 0){
echo wp_get_attachment_image($array_id[$item], 'medium');
}else{
echo "<a ref='".wp_get_attachment_image($array_id[$item])."'>";}
$item++;
}
?>
所以我的想法是在画廊中显示我用第一个ECHO完成的第一张图像的IMG,而不是所有其他图像我只想要链接到原始文件。
我的最终代码需要如下所示:
<a rel="group1" href="image_big_1.jpg"><img src="image_small_1.jpg" alt=""/></a>
<a rel="group1" href="image_big_3.jpg"></a>
<a rel="group1" href="image_big_4.jpg"></a>
<a rel="group1" href="image_big_5.jpg"></a>
<a rel="group1" href="image_big_6.jpg"></a>
你还建议什么样的rel =''我需要这个对于画廊的每个帖子都是唯一的我不知道该使用什么我不能使用TITLE因为如果他们进入多个具有相同标题的画廊那么将会是问题。我猜可能是current_time定义的某种(RANDOM)前缀?
请帮忙 谢谢
答案 0 :(得分:0)
我找到了一个解决方案并编辑了我的代码:
这是完成上述规定的代码:
<?php $post_content = get_the_content();
preg_match('/\[gallery.*ids=.(.*).\]/', $post_content, $ids);
$array_id = explode(",", $ids[1]);
$item = 0;
while ($array_id[$item] != ''){
$url = wp_get_attachment_image_src($array_id[$item]);
if($item == 0){
echo "<a href='".$url[0]."'>".wp_get_attachment_image($array_id[$item], 'gallery-thumb')."</a>";
}else{
echo "<a href='".$url[0]."'</a>";}
$item++;
}
?>
使用的参考:http://codex.wordpress.org/Function_Reference/wp_get_attachment_image_src
谢谢大家!