當前位置:
首頁 >
emlog模板中获取缩略图不同方法
發布時間:2023/11/21
40
生活家
生活随笔
收集整理的這篇文章主要介紹了
emlog模板中获取缩略图不同方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
實現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{}?>
總結
以上是生活随笔為你收集整理的emlog模板中获取缩略图不同方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: EMLOG获取当前主分类下的子分类名和链
- 下一篇: PHP读取指定URL网页地址中的所有链接