wordpress缩略图裁剪 timthumb(二)

2019年12月17日17:22:28 发表评论 热度509 ℃

之前大叔就讲过使用timthumb来对wordpress的缩略图进行规格尺寸的裁剪的教程,请移步 《wordpress缩略图尺寸重新裁剪 timthumb》 然后今天讲的同样还是timthumb来做wordpress缩略图裁剪,但是今天讲的算是更人性化,更高定制的版本教程;之前的教程,有个问题就是调用函数输出的是包含了整个<img src="*****" >而不是缩略图的地址,所以在制作wordpress主题中需要直接获取到缩略图的地址的时候,之前的教程就需要修改了,可大叔也懒的在之前的wordpress教程进行修改了,直接上新教程吧!

wordpress缩略图裁剪 timthumb(二)

方法很简单,将一下代码放入你们wordpress主题文件的functions.php内,

  1. //输出缩略图地址
  2. function post_thumbnail_src(){
  3.     global $post;
  4.     if$values = get_post_custom_values("thumb") ) {   //输出自定义域图片地址
  5.         $values = get_post_custom_values("thumb");
  6.         $post_thumbnail_src = $values [0];
  7.     } elseif( has_post_thumbnail() ){    //如果有特色缩略图,则输出缩略图地址
  8.         $thumbnail_src = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID),'full');
  9.         $post_thumbnail_src = $thumbnail_src [0];
  10.     } else {
  11.         $post_thumbnail_src = '';
  12.         ob_start();
  13.         ob_end_clean();
  14.         $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
  15.         if(!emptyempty($matches[1][0])){
  16.             $post_thumbnail_src = $matches[1][0];   //获取该图片 src
  17.         }else{  //如果日志中没有图片,则显示随机图片
  18.             $random = mt_rand(1, 5);
  19.             $post_thumbnail_src = get_template_directory_uri().'/images/random/'.$random.'.jpg';
  20.             //如果日志中没有图片,则显示默认图片
  21.             //$post_thumbnail_src = get_template_directory_uri().'/images/default_thumb.jpg';
  22.         }
  23.     };
  24.     echo $post_thumbnail_src;
  25. }

根据上述的描述,是需要在你们wordpress主题根目录下的images里创建个random文件夹,并且放入5张图片来作为无图时的随机调用图片显示!

接下来就是,将timthumb.php文件放入到wordpress主题根目录下,

最后就是调用了,

  1. <img src="<?php echo get_template_directory_uri(); ?>/timthumb.php?src=<?php echo post_thumbnail_src(); ?>&w=300&h=230&zc=1" alt="<?php the_title(); ?>" class="thumbnail"/>

这是<img src="*****" >标签的全部调用格式,当然在img标签里增加你们的个性化标签也就来的简单的多,特别是做wordpress主题开发的时候,经常要在img标签里扩展,而这就是之前那wordpress教程无法做到的,当然如果仅仅只需要获取wordpress缩略图的图像地址,那自然截取src里的地址即可,里面的w=314 h=241分别表示缩略图的宽和高!

最后,在wordpress主题的根目录下创建个cache文件夹,给予777或755权限,最后。。。如果是使用vps的朋友,建议给cache文件夹给予禁止php的操作!这个方法在上一个教程里有说到!

听大家说上面的代码复制后有错误,所以大叔将所有代码都写在php文件里,采用了utf-8无bom模式的,大家去附件区下载!

注:2015、12、15更新 《wordpress缩略图 裁剪改良》

瓜皮猪

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: