Discuz教程网

修改“帖子”推送文章后回复数{commentnum}始终为0的方法

[复制链接]
authicon dly 发表于 2012-2-28 17:49:24 | 显示全部楼层 |阅读模式
一直纠结这个问题,最近研究了一下,原来是帖子的回复数值并未插入文章表中的回复字段,而DIY调用时只调用commentnum,自然为0 。那么我们可以关联下帖子相关表,判断下该文章是否由帖子推送,如果是推送,则调用论坛回复数。

具体修改如下:

打开
source\class\block\portal\block_article.php

293行
  1. $query = DB::query("SELECT at.*, ac.viewnum, ac.commentnum FROM ".DB::table('portal_article_title')." at LEFT JOIN ".DB::table('portal_article_count')." ac ON at.aid=ac.aid WHERE $wheresql$keyword ORDER BY $orderby LIMIT $startrow, $items");
复制代码
替换为:
  1. $query = DB::query("SELECT at.*, ac.viewnum, ac.commentnum , at.id , th.replies FROM ".DB::table('portal_article_title')." at LEFT JOIN ".DB::table('portal_article_count')." ac ON at.aid=ac.aid LEFT JOIN ".DB::table('forum_thread')." th ON at.id=th.tid WHERE $wheresql$keyword ORDER BY $orderby LIMIT $startrow, $items");
复制代码
323行
  1. 'commentnum' =>intval($data['commentnum'])
复制代码
替换为:
  1. 'commentnum' => $data['id'] == 0 ? $data['commentnum'] : $data['replies']
复制代码



上一篇:德国空间Discuz X2.0 UTF8后台UCenter乱码解决方法
下一篇:done
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1314学习网 ( 浙ICP备10214163号 )

GMT+8, 2024-4-27 17:54

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表