今天在群里有人想实现侧边栏最新文章获取图片,自己折腾了一阵子,成功解决了这个问题。为了以后再用得着,所以在这儿保存记录。当然除了调出图片,还可以调用当前分类、摘要等,具体看如下代码:首页在module.php中找到最新文章那段代码,直接用以下代码替换即可:- <?php //widget:最新文章0 J* A |' f% d! q. _& k
- function widget_newlog($title){
; H- o" [ N# i3 R - $index_newlognum = Option::get('index_newlognum');?>0 Z k3 f2 P- p
- <div class="cbl-one"><div class="title"><p><?php echo $title;?></p></div>
7 ?7 G* V- I3 `; g* ^' b - <?php
5 b2 s' F; M- }3 c; s1 `" J6 | - $db = MySql::getInstance();9 z; H+ | E8 A
- $sql = $db->query ("SELECT * FROM ".DB_PREFIX."blog inner join ".DB_PREFIX."sort WHERE hide='n' AND type='blog' AND top='n' AND sortid=sid order by date DESC limit 0,$index_newlognum"); while($row = $db->fetch_array($sql)){ $logpost = !empty($row['excerpt']) ? $row['excerpt'] : ''.$row['content'].''; if (!empty($row['excerpt'])){preg_match_all("/\<img.*?src\="(.*?)"[^>]*>/i", $row['excerpt'], $match); if(empty($match[1][0])) {
: O2 E$ G2 M1 F; ^3 w9 C3 ] - preg_match_all("/\<img.*?src\="(.*?)"[^>]*>/i",$row['content'],$match);}}else{preg_match_all("/\<img.*?src\="(.*?)"[^>]*>/i", $row['content'],$match);}
5 {5 ~9 r# R9 s - $img = isset($match[0][0]) ? $match[0][0]:'<img src="图片地址" />';//无图片时显示
- b* w' ^+ K* {; W - $date = gmdate('Y年m月d日', $row['date']);
J. \: X6 s: o/ X1 w; y& `' D0 t - $content = strip_TAGs($logpost,'');, ?( n% Z3 i3 S6 ?
- $content = mb_substr($content,0,100,'utf-8');//摘要字数修改本代码中的100这个即可
1 |4 p4 [* {: ] - $comment = ($row['comnum'] != 0) ? ''.$row['comnum'].'' : '0'; $gid = $row['gid']; $tag = $db -> query("SELECT * FROM ".DB_PREFIX."tag WHERE gid LIKE '%,$gid,%'");?># C0 Y# d( A$ q' E b& Y+ ^& V! K
- <a href="<?php echo Url::sort($row['sid']);?>" title="<?php echo $row['sortname'];?>" /><?php echo $row['sortname'];?></a><br />! |$ ]& i- |4 G& ~! y1 }/ e* y
- <a href="<?php echo Url::log($row['gid']);?>" title="<?php echo $row['title'];?>" /><?php echo $row['title'];?></a><br />3 T$ d$ g9 ^( i- q
- <?php echo $img;?><br />
4 [ C0 c2 S9 V2 b# V - <?php echo $content;?>/ }; j9 w8 Y" u6 J* m( O- `; q/ d; s
- <?php };?></div><?php }?>
复制代码 随便附带上热门文章的代码 30天内按点击量排序:- <?php //widget:热门文章
8 [; y3 ]/ h" f; A - function widget_hotlog($title){
/ C7 D3 J: \- u6 _: a3 ^ - $index_hotlognum = Option::get('index_hotlognum');?>
3 R. L# D8 |3 ~0 S1 b- i6 v - <div class="cbl-one"><div class="title"><p><?php echo $title;?></p></div>: z% b5 o# c5 v
- <?php $db = MySql::getInstance();$db = MySql::getInstance();
+ _8 i8 |6 M8 l3 P - $time = time();
- z$ C, x% K9 q. ^. r2 n( z - $sql = $db->query ("SELECT * FROM ".DB_PREFIX."blog inner join ".DB_PREFIX."sort WHERE hide='n' AND type='blog' AND date > $time - 30*24*60*60 AND top='n' AND sortid=sid order by `views` DESC limit 0,$index_hotlognum");8 K% o3 Z1 Q# {% Y# ~: T
- while($row = $db->fetch_array($sql)){ $logpost = !empty($row['excerpt']) ? $row['excerpt'] :''.$row['content'].''; if (!empty($row['excerpt'])){preg_match_all("/\<img.*?src\="(.*?)"[^>]*>/i",$row['excerpt'],$match);if(empty($match[1][0])){
8 s. s/ a: A( f( N" u; u8 _$ n& W - preg_match_all("/\<img.*?src\="(.*?)"[^>]*>/i",$row['content'],$match);}}else{preg_match_all("/\<img.*?src\="(.*?)"[^>]*>/i", $row['content'],$match);}% p# d0 v/ e! L: X1 N3 N) W& X3 o
- $img = isset($match[0][0]) ? $match[0][0]:'<img src="图片地址" />';//无图片时显示* ^ _/ I, [, |2 H8 C1 K
- $date = gmdate('Y年m月d日', $row['date']);
& h& Q2 g* a6 x, o) @ - $content = strip_tags($logpost,'');" n l8 p" y7 ^& y2 L' o5 s6 {# t' d! Z
- $content = mb_substr($content,0,100,'utf-8');//摘要字数修改本代码中的100这个即可, G6 |8 U- V* W. \# ~3 x, f$ y
- $comment = ($row['comnum'] != 0) ? ''.$row['comnum'].'' : '0'; z$ H" P7 e/ u- g: X
- $gid = $row['gid'];?>
: I3 \) R$ Q# G0 R% J - <li><a href="<?php echo Url::log($row['gid']);?>" title="<?php echo $row['title'];?>" /><?php echo $row['title'];?></a></li>
, K. @8 ] x4 [! F+ f - <?php };?></div><?php }?>
复制代码 代码说明:(CSS本人就不折腾了,自己捣鼓吧,如果你这个也不会的话,就不要折腾了)2 M# P, R Q- O- D/ Z% Z
所属分类链接:<?php echo Url::sort($row['sid']);?>3 l- L+ r* h) L) |( [; ?
所属分类标题:<?php echo $row['sortname'];?>
, I5 R" W) m% R5 G6 X/ q7 N& T" o文章链接:<?php echo Url::log($row['gid']);?>
9 }& J* w4 e% {' [& D/ s4 J文章标题:<?php echo $row['title'];?>
1 |; Z M1 C/ Z) j当前第一张图片:<?php echo $img;?> " a$ N K0 C% `9 ]4 a- y
当前文章摘要:<?php echo $content;?>
" _* F, J2 M% G9 K1 A; H4 x当前评论:<?php echo $row['comnum'];?>
8 U9 A/ U- Q+ O当前浏览量:<?php echo $row['views'];?>( T4 n; c8 o# c# K' k
当前时间:<?php echo gmdate('Y年m月d日', $row['date']);?>1 h/ d" b) `. L2 }
本栏目标题(侧边栏):<?php echo $title;?>
: S0 x% f* g- Y" o; c! L# D2 ~ |