Emlog非插件实现文章添加相关文章的方法-站长杂谈下载

Emlog非插件实现文章添加相关文章的方法

开通本站Svip会员,全站资源免费下
Emlog非插件实现文章添加相关文章的方法+ v: `. X9 m# K' `5 D
第一步:在模板文件module.php中加入以下代码
  1. <?php2 v1 ~- O8 n: ~) R1 e% G6 M3 i
  2. //文章详情页下相关文章0 |: A* x, q7 b3 K* U3 |9 x
  3. function xg_logs($logData = array()){1 k1 C* x6 G+ I; X6 z3 O
  4. if (is_file($configfile)) {require $configfile;}else{
    ; P8 C8 t- b: o2 Y/ {
  5. $related_log_type = 'sort';//相关日志类型,sort为分类,TAG标签
    0 Z5 x, [3 c7 _. ~/ }
  6. $related_log_sort = 'views_desc';//排列方式,views_desc 为点击数(降序)comnum_desc 为评论数(降序) rand 为随机 views_asc 为点击数(升序)comnum_asc 为评论数(升序)
    , O0 }  O0 W- D
  7. $related_log_num = '10'; //显示文章数
    " S8 T2 _6 F7 v% r' G3 y. [; n
  8. $related_inrss = 'y'; //是否显示在rss订阅中,y为是,其它值为否
    ) V1 Y  x4 O" e% r6 ]5 x
  9. }global $value;$DB = MySql::getInstance();$CACHE = Cache::getInstance();extract($logData);if($value)# Q8 Z( `4 x7 R/ E
  10. {$logid = $value['id'];$sortid = $value['sortid'];global $abstract;}
    % S* w! n" Y" r8 |9 q4 C
  11. $sql = "SELECT gid,title FROM ".DB_PREFIX."blog WHERE hide='n' AND type='blog'";$ |8 t& @- |. M' m) Z: [
  12. if($related_log_type == 'tag'){$log_cache_tags = $CACHE->readCache('logtags');$Tag_Model = new Tag_Model();$related_log_id_str = '0';foreach($log_cache_tags[$logid] as $key => $val){$related_log_id_str .= ','.$Tag_Model->getTagByName($val['tagname']);}
    % Y% X2 Q/ D1 O# J0 u' o  K
  13. $sql .= " AND gid!=$logid AND gid IN ($related_log_id_str)";}else{% a4 V' I) ?: R0 C
  14. $sql .= " AND gid!=$logid AND sortid=$sortid";}( C: j1 F! X4 M
  15. switch ($related_log_sort){case 'views_desc':{6 R, }, E5 _7 u1 M
  16. $sql .= " ORDER BY views DESC";break;}case 'views_asc':{& e0 @) E' e7 i( Q$ |
  17. $sql .= " ORDER BY views ASC";break;}case 'comnum_desc':{
    - {2 m2 y, B- V8 |" H( d8 `
  18. $sql .= " ORDER BY comnum DESC";break;}case 'comnum_asc':{
    1 I. Y5 I& A) ]* d2 {
  19. $sql .= " ORDER BY comnum ASC";break;}case 'rand':{
    * ]$ w8 c" {, d$ V
  20. $sql .= " ORDER BY rand()";break;}}
    ( U; u- w3 ^$ T+ |0 G, @
  21. $sql .= " LIMIT 0,$related_log_num";1 l2 O( _! B5 Q
  22. $related_logs = array();$query = $DB->query($sql);while($row = $DB->fetch_array($query))
    ' @- R6 _6 k7 x" Y7 G
  23. {$row['gid'] = intval($row['gid']);$row['title'] = htmlspecialchars($row['title']);$related_logs[] = $row;}: j0 r, E* k$ g8 D6 M
  24. $out = '';if(!empty($related_logs)){foreach($related_logs as $val){
    8 @1 S  r1 v. x( q4 z% [, P; J
  25. $out .= "<li><a href="".Url::log($val['gid'])."" title="{$val['title']}">{$val['title']}</a></li>";
    ' v- u1 I, [8 a5 E: }/ q
  26. }}if(!empty($value['content'])){if($related_inrss == 'y'){$abstract .= $out;}}else{echo $out;}}
    2 h- u) s- O6 X& e' O
  27. ?>
复制代码
第二步:在模板文件echo_log.php的适合位置放入<?php xg_logs($logData);?>,最后写上CSS格式就ok了

全部评论 0

您需要登录后才可以回帖 立即登录
登录
0
0
0
返回顶部