timthumb.php下载,timthumb.php实现WordPress自动缩略图功能

timthumb.php实现WordPress自动缩略图功能

利用timthumb.php实现WordPress全自动日志缩略图功能。timthumb.php这是一个专门为 WordPress 而开发的缩略图应用的项目。有点类似于插件,但是又和 WordPress 插件不同,因为它不是被上传于 plugins 文件夹下,而是需要上传到你的主题文件夹中。你可以在这里了解和下载最新版本的 timthumb.php,一般默认配置也就可以了,如果想进一步优化可以根据需要修改 timthumb.php 里前30行的参数

默认情况下timthumb.php是不支持外链图片的,需要修改一下timthumb.php的参数实现支持外链图片

define ('ALLOW_EXTERNAL', TRUE);

define ('ALLOW_ALL_EXTERNAL_SITES', TRUE);

下面就是结合了 timthumb.php 和 WordPress 自带的缩略图功能,支持站外链接图片,自动缓存图片的可以全自动日志缩略图功能的代码。代码如下:

function post_thumbnail( $width = 100,$height = 80 ){

global $post;

if( has_post_thumbnail() ){ //有缩略图,则显示缩略图

$timthumb_src = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID),'full');

$post_timthumb = '

'.get_bloginfo(';

echo $post_timthumb;

} else{

if ($postid<1)

$postid = get_the_ID();

$image = get_post_meta($postid, "image", TRUE); // 调用自定义域图片

$post_timthumb = '

'.get_bloginfo(';

if ($image != null or $image != '') {

echo $post_timthumb;

} else {

$post_timthumb = '';

ob_start();

ob_end_clean();

$output = preg_match('//i', $post->post_content, $index_matches); //获取日志中第一张图片

$first_img_src = $index_matches [1]; //获取该图片 src

if( !empty($first_img_src) ){ //如果日志中有图片

$path_parts = pathinfo($first_img_src); //获取图片 src 信息

$first_img_name = $path_parts["basename"]; //获取图片名

$first_img_pic = get_bloginfo('wpurl'). '/cache/'.$first_img_name; //文件所在地址

$first_img_file = ABSPATH. 'cache/'.$first_img_name; //保存地址

$expired = 604800; //过期时间

if ( !is_file($first_img_file) || (time() - filemtime($first_img_file))> $expired ){

copy($first_img_src, $first_img_file); //远程获取图片保存于本地

$post_timthumb = '

'.%24first_img_src.''; //保存时用原图显示

}

$post_timthumb = '

'.get_bloginfo(';

} else { //如果日志中没有图片,则显示默认

$post_timthumb = '

'.get_bloginfo(';

}

echo $post_timthumb;

}

}}

把上述代码放在functions.php 里,然后再用

这样调用即可,其中的$width 和 $height 是必须的参数。上述代码意思是如果文章有wordpress自带缩略图,则调用自带缩略图,没有的话则调用自定义域“image”图片作为缩略图,再没有的话就自动截取文章第一张图做为缩略图,如果连图片都没有的话,那就显示一张默认图片。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值