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

  2021-11-10

emlog教程  emlog教程

  664

实现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>





免责声明

  • Scode源码站为个人站点,所有资源均是网上搜集或网友上传提供,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!本站内容仅供观摩学习交流之用,将不对任何资源负法律责任。如有侵犯您的版权,请及时发邮件联系我们,我们将尽快处理。
  • 邮箱:702852517@qq.com
  • Q Q:702852517