干货分享,灵感创作,不定期更新,敬请期待。

欲思主题首页缩量图bug修复

wordpress xhq 3319℃ 0评论

模版版本:1.0,
wordpress使用七牛云插件存储图片,刚开始用的时候先传输到本地,并没有发现问题,
但后面图片不存到本地,直接存储到七牛,然后编辑文章插入图片时直接插入七牛外链,
发现如果第一张图片图片为七牛外链,那么首页缩略图将显示不正常,这会影响网页打开速度,解决办法如下:
\wp-content\themes\yusi1.0\modules\excerpt.php,第33行改为

<div class="focus"><a target="_blank" href="<?php the_permalink(); ?>"><img class="thumb" src="<?php $url = post_thumbnail_src();if(strpos($url, $_SERVER['SERVER_NAME'])){ echo get_bloginfo('template_url') .'/timthumb.php?src='.$url.'&h=123&w=200&q=90&zc=1&ct=1';}else{echo $url.'?imageMogr2/thumbnail/200x123!';} ?>" alt="<?php the_title(); ?>" /></a></div>
 <?php } ?>

\wp-content\themes\yusi1.0\functions.php,post_thumbnail_src()函数改为(即把直接输出改为return):

function post_thumbnail_src(){
    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);
		$post_thumbnail_src = $matches [1] [0];   //获取该图片 src
		if(empty($post_thumbnail_src)){	//如果日志中没有图片,则显示随机图片
			$random = mt_rand(1, 10);
			$pic = get_bloginfo('template_url');
			$pic .= '/img/pic/'.$random.'.jpg';
			return $pic;
			//如果日志中没有图片,则显示默认图片
			//echo '/img/thumbnail.png';
		}
	};
	return $post_thumbnail_src;
}

大概思路就是根据缩略图地址域名是否是本域名则按欲思主题处理方式,否则按七牛处理方式

转载请注明:爱游思 » 欲思主题首页缩量图bug修复

喜欢 (1)

您必须 登录 才能发表评论!