记录学习与后端知识并分享学习代码过程(会飞的鱼Blog)

emlog缩略图不同实现方法:正文-附件-随机图片

会飞的鱼 0 1779 2017年9月30日

实现emlog列表也缩略图按先调用正文第一张图片,没有则调用附件图片,如果前两者都没有则调用随机图片代码

第一步:首先在模板的module.php文件中最后面加入如下代码

<?php
//全局匹配正文中的图片并存入imgsrc中
function img_zw($content){preg_match_all("|<img[^>]+src=\"([^>\"]+)\"?[^>]*>|is", $content, $img);$imgsrc = !empty($img[1]) ? $img[1][0] : '';if($imgsrc):return $imgsrc;endif;}
//Custom: 获取附件第一张图片
function img_fj($logid){$db = MySql::getInstance();$sql = "SELECT * FROM ".DB_PREFIX."attachment WHERE blogid=".$logid." AND (`filepath` LIKE '%jpg' OR `filepath` LIKE '%gif' OR `filepath` LIKE '%png') ORDER BY `aid` ASC LIMIT 0,1";$imgs = $db->query($sql);$img_path = "";while($row = $db->fetch_array($imgs)){$img_path .= BLOG_URL.substr($row['filepath'],3,strlen($row['filepath']));}
return $img_path;}?>

第二步:然后在log_list.php的foreach循环中加入如下代码

<?php if(img_zw($value['content'])){$imgurl = img_zw($value['content']);
}elseif(img_fj($value['logid'])){$imgurl = img_fj($value['logid']);
}else{$imgurl = TEMPLATE_URL.'images/'.rand(1,5).'.jpg';}
?><p><img src="<?php echo $imgurl;?>" /></p>

本教程代码结束!!!!

以下代码为舍力自用代码,请不必理会,直接替换上面第二步代码,即实现有调用正文第一张图片 => 附件图片 => 无图片则不显示。

<?php if(img_zw($value['content'])){$imgurl = img_zw($value['content']);?><p><img src="<?php echo $imgurl;?>" /></p>
<?php }elseif(img_fj($value['logid'])){$imgurl = img_fj($value['logid']);?><p><img src="<?php echo $imgurl;?>" /></p>
<?php }else{}?>
本文由 @会飞的鱼 于 2017-9-30 发布在 会飞的鱼Blog,如无特别说明,本博文章均为原创,转载请保留出处。

网友评论

    暂无评论

会飞的鱼 在线咨询

在线时间:9:00-22:00
周六、周日:14:00-22:00