2022-09-27 6801
zblogphp主题对于文章列表缩略图的调用一般大致分为三种:
1、自动提取文章中的第一张图片作为缩略图,文章无图时调用主题自带的默认图片随机显示;
2、自动提取文章中的第一张图片作为缩略图,文章无图时不显示图片;
3、用户自定义缩略图(非自定义摘要)。
恩,好像就这三种用的比较多,其他的方法未知,好像也没其他的可能了吧,至于用户自定义文章摘要的用法不在此列。
使用方法:
{php} $temp=mt_rand(1,5); $pattern="/<img[^>]*src=\"([^\"]+\.(gif|jpg|png))\"[^>]*>/"; $content = $article->Content; preg_match_all($pattern,$content,$matchContent); if(isset($matchContent[1][0])) $temp=$matchContent[1][0]; else $temp=$zbp->host."zb_users/theme/$theme/style/img/$temp.jpg"; {/php}
把这段代码加到列表摘要模板中,在以上代码中,先是定义了一个1到5的变量,然后判断了如果文章没有缩略图的时候,就随机调用主题目录/style/img文件中的5张图片(当然了,图片目录/图片数量/随机显示的图片数量等,可按需要自行修改)
图片调用代码:
<img scr="{$temp}" /><!--官方介绍的调用文章缩略图的调用标签-->
以上的调用文章图片为缩略图的方法稍微有点麻烦,要在不同页面都调用文章缩略图的时候,就必须将调用代码都写一遍,这大大加大了代码量,这个时候我们可以将以上代码写入主题根目录的include.php中(如果没有这个php文件,可以自己新建一个),给以上代码定义一个方法,在不同类型的页面时直接调用此方法就可以了。
//缩略图调用 function lingruofeng_imagesl($related) { global $zbp; $temp=mt_rand(1,5); $pattern="/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg|\.png]))[\'|\"].*?[\/]?>/"; $content = $related->Content; preg_match_all($pattern,$content,$matchContent); if(isset($matchContent[1][0])){ $thumb=$matchContent[1][0]; }else{ $thumb=$zbp->host . "zb_users/theme/" .$zbp->theme. "/images/" .$temp. ".jpg"; } return $thumb; }
好了,教程完毕,是不是很简单呢,赶紧去试试吧!
本文链接:https://blog.lingruofeng.com/seo/25.html
版权声明:本站部分素材来自网络整理,如侵犯了您的合法权益,请联系我们删除!
扫码二维码
获取最新动态
个人博客