您试图循环浏览缩略图,这没有任何意义:
foreach ($thumbnail as $thumb){
然后在你所指的循环中
$thumbnail
无论如何,请再次:
<img class="thumbnail zoom" src="<?php echo $thumbnail[0];?>" >
wp_get_attachment_image_src()
返回如下所示的数组:
array(
0 => \'http://website.com/path/to/image.jpg\', // URL
1 => 150, // Width
2 => 150, // Height
3 => true // Is a resized version?
);
所以当你尝试循环通过它时,你正在循环通过这4个值。但既然你使用
$thumbnail[0]
在循环中,它只会回显第一个值4次。
既然你在里面做这些while ( $loop->have_posts() ) : $loop->the_post();
对于每篇文章,您将回显特色图像的URL 4次。
这将是最简单的方法:
$args = array(
\'post_type\' => \'service_slider\',
\'posts_per_page\' => 5
);
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();
echo \'<div class="item">\';
echo wp_get_attachment_image( get_post_thumbnail_id(), \'thumbnail\', false, array( \'class\' => \'thumbnail zoom\' ) );
echo \'</div>\';
endwhile; wp_reset_postdata();
while ( $loop->have_posts() ) : $loop->the_post();
正在通过这些帖子循环。你不需要
foreach
完全然后在该循环中,我输出了该项
div
以及帖子的特色图片。
请注意,我使用了wp_get_attachment_image()
, 输出当前帖子缩略图的填充图像标记(因为我传递了它get_post_thumbnail_id()
. 第四个参数用于传递要使用的图像类。此函数还可以自动拉入alt文本,这有利于辅助功能。