Manyou诚邀开发者加盟 | 常见问题
《站长》俱乐部官方群公布 城市联络员机会多多
立即免费下载 Discuz!7.0.0 正式版
安装升级指南 | 用户手册 | 新手建站学堂
基于.net架构的Discuz!NT2.6正式版发布
Comsenz公司2009年招贤纳士,期待您的加盟
Discuz!收费服务内容及价格
7月重庆、成都、西安三地社区运营实战特训速报名
Discuz!/UCHome 专用官方虚拟主机
牧场新服一起联运:豆浆机免费带回家
基于Discuz!的免费论坛空间5D6D
康盛创想《站长》俱乐部18城市互动之旅报名ing
返回列表 回复 发帖

Discuz!上下主题细节优化

演示:http://www.phpq.net/club/thread-4-1-1.html
您是否已经厌倦了主题贴中
‹‹ 上一主题 | 下一主题 ››
这样的显示方式?
其实搜索引擎也厌倦了这些内容,大家可以看看下自己的访问日志中,有多少搜索引擎还在GET redirect.php这个页面的!

现在只要2步将您的论坛修改成为第一步
在论坛根目录的viewthread.php中(大概在25行左右)
查找
  1. $query = $db->query("SELECT * FROM {$tablepre}threads t WHERE tid='$tid' AND displayorder>='0'");

  2. if(!$thread = $db->fetch_array($query)) {
复制代码
替换为
  1. $lastthread = $thread = $nextthread = array();
  2. $lasttid = intval($tid - 1);
  3. $nexttid = intval($tid + 1);
  4. $query = $db->query("SELECT * FROM {$tablepre}threads t WHERE tid IN ('$lasttid', '$tid', '$nexttid') AND displayorder>='0'");
  5. while($threadt = $db->fetch_array($query)) {
  6. $lastthread = $threadt['tid'] == $lasttid ? $threadt : $lastthread;
  7. $thread = $threadt['tid'] == $tid ? $threadt : $thread;
  8. $nextthread = $threadt['tid'] == $nexttid ? $threadt : $nextthread;
  9. }

  10. if(!$thread) {
复制代码
第二步
在templates/default/viewthread.htm中(大概34行 和350行都有)
查找
  1. <div class="threadflow"><a href="redirect.php?fid=$fid&tid=$tid&goto=nextoldset"> ‹‹ {lang last_thread}</a> | <a href="redirect.php?fid=$fid&tid=$tid&goto=nextnewset">{lang next_thread} ››</a></div>
复制代码
替换为
  1. <div class="threadflow"><!--{if $lastthread[tid]}--> ‹‹ <a href="viewthread.php?tid=$lasttid">$lastthread['subject']</a><!--{/if}--> <!--{if $lastthread[tid] && $nextthread[tid]}--> | <!--{/if}--> <!--{if $nextthread[tid]}--&gt;&lt;a href="viewthread.php?tid=$nexttid">$nextthread['subject']</a> ››<!--{/if}--></div>
复制代码
顺便AD下
Discuz!专业QQ群:45918770 这里不定期有一些专有插件群里高手众多。不欢迎潜水者和总问简单问题而不成长者,定期清理!
[ 本帖最后由 小水水 于 2007-10-30 14:05 编辑 ]

[ 本帖最后由 习明 于 2007-11-8 21:37 编辑 ]
2

评分次数

  • 小铭铭

  • itotti

占位更新

这里也有个
http://www.discuz.net/viewthread.php?tid=772651
他的优点是关联每个版块的上下主题

我的优点是几乎在不增加系统负载的情况下,关联了整个论坛的上下主题
自己选择哪个使用哦
喜欢用哪个用哪个~

[ 本帖最后由 小水水 于 2007-11-2 23:38 编辑 ]
很好很强大
。。。。。。。。。
挺好
如果你的问题长时间没有回应,请将帖子地址报告给版主。

想学CSS,就来:CSSer - 为web标准化而努力:http://www.csser.name
不是发过了么?重复发贴?好象在哪看过。
 
1楼和2楼的两个上下主题优化各有特点
水水的这个在不增加查询的情况下在当前主题显示其tid-1和tid+1帖子的标题 优点是不加查询 提高效率 缺点是由于直接用tid增减来取上下主题 所以取到的帖子不一定是当前版块的 而且当删除了tid临近的主题时 就不会显示了
2楼那个帖子的楼主和我在7楼发的方法思路是一致的 就是在读取帖子的时候增加两次查询获取对应版块的上下主题 优缺点刚好和水水的方法相对
`顶了```` ````````````````````````````````
专业模版定制 仿制 1.5G南北互通空间只要158元有意者联系QQ22589526 EMAIL loaoding@qq.com
支持楼主!
比较实用的功能!
5.5的时候我把他加在一楼下面方便浏览啦!
郁闷,刚才网络延迟,不小心发重复啦!

[ 本帖最后由 HY清风 于 2007-10-30 14:47 编辑 ]
返回列表