七空幻音LOGO

七空幻音

wordpress首页缩略图改进2015-12-16 02:09:44

用wordpress的朋友应该在首页的循环显示文章处有文章图片缩略图吧?一般都是用wordpress的特色图片或者文章第一个图片作为缩略图,有些人也是用的一些设置好的图片随机显示的。

可是想想,如果文章里面的第一张图片有1M多的话,那么首页也就会显示1M多的图片,反而让用户加载更多大图片增加网站加载速度

wordpress在上传图片的时候制定了3种图片大小,第一种是150x150 ,第二种是中等大小,第三种是原图

我们恰好可以使用150x150的图片来设置缩略图

修改后的代码:


function thumb_img($soContent){
    $soImages = '~<img [^>]* />~';
    preg_match_all($soImages, $soContent, $thePics);
    $allPics = count($thePics[0]);
    if ($allPics > 0) {
        //改进代码 先填写自己网站路径   bloginfo('url') 是输出并不是一个变量
        $url = "https://www.balrogsxt.com";
        echo "<span id='thumb'>";
        //用正则表达式判断图片路径是否是域名下的,因为可能存在一些外链图片,毕竟外链图片一般不存在150x150大小的图片
         if(preg_match("/".$url."/",$thePics[0][0])){
        //不仅要判断是否是域名下面的图片,还要判断该图片是否已经是小图片了
         if(preg_match("/-([0-9]+)x([0-9]+).(jpg|png|gif|bmp)/",$thePics[0][0])){
            //正则表达式替换图片路径
         echo preg_replace("/-([0-9]+)x([0-9]+).(jpg|png|gif|bmp)/","_150x150.$3",$thePics[0][0]);
            }else{
                echo preg_replace("/.(jpg|png|gif|bmp)/","_150x150.$1",$thePics[0][0]);
            }
        }else{
            echo $thePics[0][0];
        }
        echo '</span>';
    } else {
        echo "<span id='thumb'>";
        echo "<img src='";
        echo get_xtinfo('url');
        echo "images/blog/index-default.jpg'></span>";
    }
}

OK,就这么简单,如果你不嫌wp 150x150的图片不完整的话可以使用哦~

如果不在意这个图片大小的话就可以不用了~



维护中

}else{ ?>

0条评论登录后可见

详细图片
载入中...