有朋自远方来,不亦乐乎。
轻量级实现文章缩略图功能
原创 橘子书  18 Mar/26 1.1K 5 A+

实现文章的方法有很多,甚至有一些方法还是图片加密、图片缓存的高端showtime。

但是,有时候我们使用缩略图就单纯只想要输出一张图而已,简单用图来避免前端无图的尴尬局面。

所以!

只需将以下代码扔进functions,就是任性玩耍:

//输出缩略图地址
function wd_thumb(){
	global $post;
	if( $values = get_post_custom_values("thumb") ) {	//输出自定义域图片地址,请参照自用主题修改为一致的自定义域,要是原先没有,请自行添加该域。
		$values = get_post_custom_values("thumb");
		$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, 9);//9张随机图,可以任意修改为与自身主题随机图数目匹配值。
            $post_thumbnail_src = get_template_directory_uri().'/images/thumbs/'.$random.'.jpg';//随机图所在目录,根据实际情况修改具体路径
		}
	};
	echo $post_thumbnail_src;
}

前端调用方式

<?php echo wd_thumb();?>

它的调用比较特殊,不带任何样式,单纯就是输出一张图的纯链接,没有额外的html样式 。例如www.域名.com/imgs.jpg

以上代码简简单单实现了优先级的判断:自定义域>特色图>抓取文章内图>默认随机图

如果不会写自定义域外链缩略图,请瞅这里:

为wordpress添加metabox模块

wordpress自带的meta box模块功能,在我看来就跟shortcode(短代码)一样强大。 因此一般而言,一个强大的主题后台框架,...

发布时间:2017/08/23 作者:橘子书 评论:6

阅读全文

目前评论:5   其中:访客  3   博主  2

发表评论

莫慌,小狮子正在努力加载评论...
  1. 懿古今
    懿古今3 ( 2018.03.28 15:23:58 )  板凳

    现在很多主题的缩略图好像都是这个做法,不过只是多了一个裁剪功能的缩略图防止图片变型而已。

  2. 西枫里博客
    西枫里博客3 ( 2018.03.26 10:48:40 )  沙发

    看你们折腾的文章我也想弄个WP来折腾一下了,哈哈