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

追梦小窝 2016-10-26 23:15:22 984浏览 2条评论
首页/ 正文
分享到: / / / /

实现emlog列表也缩略图按先调用正文第一张图片,没有则调用附件图片,前2者都没有则调用随机图片,代码如下:首页在模板的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($blogid){$db = MySql::getInstance();$sql = "SELECT * FROM ".DB_PREFIX."attachment WHERE blogid=".$blogid." 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中加入:

<?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{}?>

最后修改:2020-06-20 12:57:15 © 著作权归作者所有
如果觉得我的文章对你有用,请随意赞赏
上一篇

发表评论

说点什么吧~

评论列表

image
皮皮豪 2017-07-16 12:06:08
看了还是不会啊
回复
image
追梦小窝 2017-07-22 14:04:27
@皮皮豪:那里不会,教程说的很详细
回复
扫一扫支付