Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

6.1.0后台设置实现“首页4格/5格”--让“插件型N格”从此靠边站!

[复制链接]
67ke 发表于 2008-6-11 22:12:39 | 显示全部楼层
0606补丁以后随便点击哪个标题就会退出系统,成为游客,所以目前不能使用
回复

使用道具 举报

 楼主| sdaupp 发表于 2008-6-11 23:00:50 | 显示全部楼层

回复 60# heartrian 的帖子

原帖由 okjan 于 2008-6-11 14:24 发表
试用成功 www.gd80.net
但有个问题,没有回复的帖子跑到最新回复里去了

后台检查一下,主题排序方式: 按最后回复时间倒序排序 是否选中?
回复

使用道具 举报

heartrian 发表于 2008-6-11 23:21:46 | 显示全部楼层
楼主不是那个问题,我已经那样设置了,应该是怎么写个函数什么的,把那些新发的帖子而没有回复的帖子屏蔽掉,才是正道啊,

在此,也赞下楼主很强!
回复

使用道具 举报

 楼主| sdaupp 发表于 2008-6-11 23:29:09 | 显示全部楼层
哦,对不起,确实是这样,我一直没发现……
看来DZ的这个调用毛病还真不少。等有时间研究一下。
回复

使用道具 举报

abcck 发表于 2008-6-11 23:34:54 | 显示全部楼层
做个纪念\
回复

使用道具 举报

 楼主| sdaupp 发表于 2008-6-12 01:44:53 | 显示全部楼层
原帖由 heartrian 于 2008-6-11 23:21 发表
楼主不是那个问题,我已经那样设置了,应该是怎么写个函数什么的,把那些新发的帖子而没有回复的帖子屏蔽掉,才是正道啊,

在此,也赞下楼主很强!

谢谢关注,这确实是DZ本身的一大bug!
修补方法如下:
查找:
  1.                 if(in_array($orderby, array('hourviews','todayviews','weekviews','monthviews'))) {
  2.                         $historytime = 0;
  3.                         switch($orderby) {
  4.                                 case 'hourviews':
  5.                                         $historytime = $timestamp - 3600 * $hours;
  6.                                 break;
  7.                                 case 'todayviews':
  8.                                         $historytime = mktime(0, 0, 0, date('m', $timestamp), date('d', $timestamp), date('Y', $timestamp));
  9.                                 break;
  10.                                 case 'weekviews':
  11.                                         $week = gmdate('w', $timestamp) - 1;
  12.                                         $week = $week != -1 ? $week : 6;
  13.                                         $historytime = mktime(0, 0, 0, date('m', $timestamp), date('d', $timestamp) - $week, date('Y', $timestamp));
  14.                                 break;
  15.                                 case 'monthviews':
  16.                                         $historytime = mktime(0, 0, 0, date('m', $timestamp), 1, date('Y', $timestamp));
  17.                                 break;
  18.                         }
  19.                         $sql .= ' AND t.dateline>='.$historytime;
  20.                         $orderby = 'views';
复制代码
替换为:
  1. //sdaupp changed
  2.                 //if(in_array($orderby, array('hourviews','todayviews','weekviews','monthviews'))) {
  3.                 if(in_array($orderby, array('hourviews','todayviews','weekviews','monthviews','lastpost'))) {
  4. // end
  5.                         $historytime = 0;
  6.                         switch($orderby) {
  7.                                 case 'hourviews':
  8.                                         $historytime = $timestamp - 3600 * $hours;
  9.                                 break;
  10.                                 case 'todayviews':
  11.                                         $historytime = mktime(0, 0, 0, date('m', $timestamp), date('d', $timestamp), date('Y', $timestamp));
  12.                                 break;
  13.                                 case 'weekviews':
  14.                                         $week = gmdate('w', $timestamp) - 1;
  15.                                         $week = $week != -1 ? $week : 6;
  16.                                         $historytime = mktime(0, 0, 0, date('m', $timestamp), date('d', $timestamp) - $week, date('Y', $timestamp));
  17.                                 break;
  18.                                 case 'monthviews':
  19.                                         $historytime = mktime(0, 0, 0, date('m', $timestamp), 1, date('Y', $timestamp));
  20.                                 break;
  21. // sdaupp add
  22.                                 case 'lastpost':
  23.                                         $noreply = true;
  24.                                 break;
  25. // end
  26.                         }
  27.                         $sql .= ' AND t.dateline>='.$historytime;
  28.                         $orderby = 'views';
  29. // sdaupp add
  30. if($noreply) {
  31.         $sql .= ' AND t.replies<>0';
  32.         $orderby = 'lastpost';
  33. }
  34. //end
复制代码
别紧张,其实修改很少,只不过为了叙述简单,我把一大段全复制替换了……
附上我改过的文件供对照参考。

强烈建议:既然已经做不到“不修改任何文件”了,为了真正实现“高亮特性”、“无回复帖子不出现在最新回复中”,请去33楼下载完全版重新上传导入。

[ 本帖最后由 sdaupp 于 2008-6-12 02:08 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

天津马克 发表于 2008-6-12 03:09:54 | 显示全部楼层
这个已经安装了,感觉不错,继续观察:www.7car.cc
回复

使用道具 举报

67ke 发表于 2008-6-12 13:36:58 | 显示全部楼层
总是有个问题,过一段时间再想从标题点击浏览帖子时就退出变成游客了,再登陆是登陆不进的,只能从其它的地方登陆,可是如果刷新了论坛主页或从后台清理缓存就正常了,这是怎么回事0606补丁之后的版本
回复

使用道具 举报

 楼主| sdaupp 发表于 2008-6-12 15:21:01 | 显示全部楼层
不清楚你说的情况。因为我到现在还是使用6.0.0版DZ,不习惯跟风……
0606版没试过,看过程序没发现什么问题……
回复

使用道具 举报

hixinqin 发表于 2008-6-12 16:24:56 | 显示全部楼层
楼主
演示不正常了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-16 21:39 , Processed in 0.028994 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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