Emlog本身自带的相邻文章功能的上一篇和下一篇是调用的全站相邻文章。有的时候我们可能希望上一篇和下一篇只调用本文相同分类的文章,这样的好处还是有的,比如访客在浏览“模板代码”分类,那么相邻文章最好也是显示模板文章,这样还是能够提升那么一点点用户体验的。
6 u1 F0 L. D5 j5 ` 下面是舍力写的获取相同分类下上下相邻文章的方法[将下面代码放入模板文件module.php中(ps:最好放在module.php最底部,这样可以避免出错)]:- <?php8 y, I: o5 c$ c, F/ o( g% i0 F
- //shuyong.net:同分类相邻文章8 n! Y* L' t) o# v" D" G
- function nextLog($logid, $sortid, $flag, $pattern=0){
9 \. ]0 ?* w( W, w g - $Log_Model = new Log_Model();if($flag == 'prev'){$sql = " AND gid < $logid ORDER BY gid DESC";$word = '上一篇';}/ L2 _' g( m- j! |9 b* E
- else{$sql = " AND gid > $logid ORDER BY gid ASC";$word = '下一篇';}
/ b" i. ~( J' O( h) ?7 ] - $log = $Log_Model -> getLogsForHome(" AND sortid = $sortid "."$sql", 1, 1);1 F7 M& p2 C* C* p
- if($log){foreach($log as $value):?>: U4 U/ j+ M3 w5 ~
- <?php echo $word;?>:<a href="<?php echo $value['log_url'];?>" title="<?php echo $value['log_title'];?>"><?php echo $value['log_title'];?></a>
( A" W) @# M- u' R3 _ - <?php endforeach;}else{echo $word.':没有了'; }- p7 } M0 |2 o8 E' L n
- }?>
复制代码 然后在echo_log.php相应位置放入- <?php nextLog($logid, $sortid, 'prev'); nextLog($logid, $sortid, 'next');?>
复制代码 这样,我们就实现了调用同一分类下的相邻日志了!
( j5 N/ a' p' F$ Z& a" m |