wordpress缩略图使用又拍云裁剪与加速

在使用了wordpress又拍云插件后,文章中上传的图片都被同步到了又拍云的空间,明显加快了访问速度。

但是我又发现了一个问题,又拍云是带缩略图版本功能的,可以将又拍云中的图片按照设定的版本信息就行裁剪,压缩等。

怎样让wordpress的缩略图完美支持又拍云缩略图版本呢?


第一步:

在又拍云空间中设置缩略图版本

如图所示:

1.jpg

通过这样的设置后,我们在又拍云图片原有url基础上,增加!200X150即可访问缩略图。


第二步:

在wordpress的缩略图格式后面增加!200X150字符。

修改wordpress主题下的functions.php

增加如下代码:

//提取缩略图
function post_thumbnail_src(){
global $post;
if( $values = get_post_custom_values("thumbnail") ) { //输出自定义域图片地址
$values = get_post_custom_values("thumbnail");
$post_thumbnail_src = $values [0];
} elseif( has_post_thumbnail() ){ //如果有特色缩略图,则输出缩略图地址
$thumbnail_src = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID),'full');
$post_thumbnail_src = $thumbnail_src [0];
} else {
$post_thumbnail_src = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
if(!empty($matches[1][0])){
$post_thumbnail_src = $matches[1][0]; //获取该图片 src
}else{ //如果日志中没有图片,则显示随机图片
$random = mt_rand(1, 10);
$post_thumbnail_src = 'http://img.el0310.com/files/images/thumbnail'.$random.'.jpg';
//如果日志中没有图片,则显示默认图片
//$post_thumbnail_src = get_template_directory_uri().'/images/default_thumb.jpg';
}
};
echo $post_thumbnail_src;
}

在模板中需要插入缩略图的地方插入

<img src="<?php post_thumbnail_src(); ?>!200X150" alt="<?php the_title(); ?>"/>