Wordpress获取缩略图地址而不是直接输出图片

格言秀   2016-06-07 14:51   152   0  

当你使用 WordPress 默认的日志缩略图功能的时候,如果想获取或者输出缩略图的地址,可以通过下面的函数代码:


<?php $img_src = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), "Full");echo $img_src[0]; ?>

例如下方代码:

<a class="a-img" target="_blank" href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><img src="<?php $img_src = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), "Full");echo $img_src[0]; ?>" style="border: 0"></a>

PS略图调用方法:

1、通过增加缩略图型号控制尺寸 

在主题制作中,我们还有不可见的缩略图尺寸控制。我们知道,只有在wordpress主题的 functions.php中规定了add_theme_support('post-thumbnails');才能正常使用wordpress的文章 缩略图(特色图片功能,上文讨论的可以不用特色图片功能就能实现,但如果前台要调用而非仅仅进行插入的话,必须增加该功能。),同时,我们在规定该功能之 后,还能配置我们自己想要的图片尺寸。
在默认情况下,wordpress有下面几种缩略图尺寸:
缩略图(Thumbnail)
小图(Small)
中等图(Medium)
大图(Large)
原图(Full)

它们是针对调用的,在没有进行型号的增加时,我们即可用the_post_thumbnail()调用这几种尺寸(对应的图片存在才会调用,不存在 会自动降一级或使用原图)。这几个默认的尺寸,其实正好对应后台设置尺寸,他们调用到的大小正式后台设置的情况。不过也有例外,当我们已经有了一些副本的 时候,我们竟然改动了后台的设置,这个时候遗憾的是,系统将会调用原图,无论你选择哪种尺寸,因为尺寸大小对应的图片已经不存在了(wordpress按 照图片的尺寸保存副本)。
我们可以增加一些型号,补充我们对文章缩略图的尺寸需求。例如,我们并不需要很多尺寸,只需要原图,和将原图缩略为600*250的一张图,只需两 张即可,我们可以把后台所有选项设置为空,在add_theme_support('post-thumbnails');后紧接着加上一句:
set_post_thumbnail_size(600,250,true);
这样,wordpress将为我们创建一张600*250经过裁剪的副本(将上面第三个参数设置为false表示不进行裁剪,只按比例缩小),而在调用时,我们需要用the_post_thumbnail('post-thumbnail');而非the_post_thumbnail();。虽然post-thumbnail型号也算是内置的,但是它需要set_post_thumbnail_size声明后才能用。
由于我们采用的是set_post_thumbnail_size的方法,并把后台设置设为空,因此,在后台插入图片时,没有其他尺寸的图片可以选 择,只能插入原图。为了可以有选择的余地,你可以不用set size,而是将后台缩略图一项设置为600*250即可,这样既可以生成一张缩略图副本,又可以插入这个副本到文章中。
这里需要插入说明的一点是,the_post_thumbnail();不带参数(默认参数为thumbnail)的缩略图调用,会自动调用出一张 后台设置了大小的可用的最小的一张缩略图,如果没有设置,则调用原图。它不会调用set_post_thumbnail_size设置的大小的那张图。
默认型号thumbnail和small的区别在于,当图片很小很小,甚至比最小设置的那个尺寸还小时,thumbnail所指的是原图。其他大多数情况下,thumbnail为参数调用都会调用后台设置了大小的可用的最小的一张缩略图。
除此之外,我们还可以增加其他型号的缩略图,不过和set_post_thumbnail_size一样,新增的型号不能用在插入文章和直接调用中。例如,我们可以用下面的方法来增加一个缩略图副本:
add_image_size('test-cover',450,250,true);

如果增加这一条的话,我们在上传一张图片之后,还会创建一张450*250的副本,前提是这张图片的长或宽比这个值更大。注意最后一个参数,仍然为 强制裁剪的意思。在主题中,我们可以用the_post_thumbnail('test-cover');调用这个副本。用这种方法,我们可以创建任意 的副本。
2、调用不同尺寸的缩略图 
我们一直谈到the_post_thumbnail来调用,其实,在wordpress主题文制作中,我们将这些调用函数放在文章LOOP循环内,并把型号当做参数赋给它,就能调用出不同型号的图片。
例如the_post_thumbnail('large');调用大尺寸的图片,the_post_thumbnail('test-cover');调用增加的尺寸副本。它将直接打印出不带链接的图片。
能够进行缩略图调用的函数有:
the_post_thumbnail() get_the_post_thumbnail()
wp_get_attachment_image_src()

它们的具体用法就不详细解说,你可以通过wordpress官方了解它们。通过这几个函数,我们就可以非常方便的调用出我们的各个尺寸型号的缩略图!

以上信息来自网络请自行测试!