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

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

开通本站Svip会员,全站资源免费下
Emlog非插件实现文章添加相关文章的方法' V  W6 u/ s9 t9 b* I2 v
第一步:在模板文件module.php中加入以下代码
  1. <?php
    / m( Y# |2 x1 B' W, r  @* k
  2. //文章详情页下相关文章/ H2 f6 A. S# H# b/ B
  3. function xg_logs($logData = array()){
    2 ?, s  E/ p9 Q  e) b6 L
  4. if (is_file($configfile)) {require $configfile;}else{: B5 R! O- ?) t5 Q
  5. $related_log_type = 'sort';//相关日志类型,sort为分类,TAG标签
    / @0 @: K6 D. L! A
  6. $related_log_sort = 'views_desc';//排列方式,views_desc 为点击数(降序)comnum_desc 为评论数(降序) rand 为随机 views_asc 为点击数(升序)comnum_asc 为评论数(升序)
    7 t2 K5 a: S; m3 |$ d
  7. $related_log_num = '10'; //显示文章数
    ! ~7 S7 n4 x/ U# g) b( g
  8. $related_inrss = 'y'; //是否显示在rss订阅中,y为是,其它值为否5 D$ y5 b5 `4 n( f- H
  9. }global $value;$DB = MySql::getInstance();$CACHE = Cache::getInstance();extract($logData);if($value)
    , s  m; S# Z% V* [0 f3 ?$ u
  10. {$logid = $value['id'];$sortid = $value['sortid'];global $abstract;}
    9 [/ R4 S1 O- [* H
  11. $sql = "SELECT gid,title FROM ".DB_PREFIX."blog WHERE hide='n' AND type='blog'";
    , H4 |* u7 c1 _+ D% J
  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']);}+ @# E) e9 e  S3 U2 o4 }
  13. $sql .= " AND gid!=$logid AND gid IN ($related_log_id_str)";}else{
    4 q. v1 M+ h: o. Q
  14. $sql .= " AND gid!=$logid AND sortid=$sortid";}
    1 X$ k" L, F, h
  15. switch ($related_log_sort){case 'views_desc':{& J& N$ t" `  v/ ?( n6 C# c8 l" h
  16. $sql .= " ORDER BY views DESC";break;}case 'views_asc':{
    7 l% d" y# K$ T- b  N
  17. $sql .= " ORDER BY views ASC";break;}case 'comnum_desc':{
    . I" r" w& m6 X
  18. $sql .= " ORDER BY comnum DESC";break;}case 'comnum_asc':{
    3 g% Z6 d( z) t' r& v* H( k0 d8 y
  19. $sql .= " ORDER BY comnum ASC";break;}case 'rand':{! a+ V- s: \' [' ?
  20. $sql .= " ORDER BY rand()";break;}}
    " r, m" Y" ?6 F$ Y$ O6 ~
  21. $sql .= " LIMIT 0,$related_log_num";8 ?0 Z  `2 u' q
  22. $related_logs = array();$query = $DB->query($sql);while($row = $DB->fetch_array($query))
    " t3 z, o. A0 w+ y
  23. {$row['gid'] = intval($row['gid']);$row['title'] = htmlspecialchars($row['title']);$related_logs[] = $row;}/ f$ C& j7 W1 _
  24. $out = '';if(!empty($related_logs)){foreach($related_logs as $val){* ^1 v/ \0 ?7 J9 a" P: v! d
  25. $out .= "<li><a href="".Url::log($val['gid'])."" title="{$val['title']}">{$val['title']}</a></li>";
    , E1 K$ Z' {* g  N; S1 c  X- I$ |
  26. }}if(!empty($value['content'])){if($related_inrss == 'y'){$abstract .= $out;}}else{echo $out;}}# h+ Z  P; G: R
  27. ?>
复制代码
第二步:在模板文件echo_log.php的适合位置放入<?php xg_logs($logData);?>,最后写上CSS格式就ok了

全部评论 0

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