立即免费下载 Discuz!6.1.0正式版
Discuz! 6.1.0 使用说明
Discuz!NT升级至v2.1
开放源码下载
UCenter Home 1.2 正式版发布
官方站 | 帮助文档
基于ECShop的免费网店托管-卖否
PHP实战精英班培训 | LAMP培训大连
Discuz!收费服务内容及价格
论坛免费升级 手握手
Discuz!/ECShop 专用官方虚拟主机
注册付费广告征集
Comsenz 招聘信息
网店系统ECShop v2.6.0正式版火热发布
基于Discuz!的免费论坛空间5D6D
第二届PHP中国开源发展及人才状况调查
发新话题
打印

[插件] Discuz!上下主题细节优化

本主题由 僭燮水 于 2007-10-30 13:53 设置高亮

Discuz!上下主题细节优化

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

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

if(!$thread = $db->fetch_array($query)) {
替换为
复制内容到剪贴板
代码:
$lastthread = $thread = $nextthread = array();
$lasttid = intval($tid - 1);
$nexttid = intval($tid + 1);
$query = $db->query("SELECT * FROM {$tablepre}threads t WHERE tid IN ('$lasttid', '$tid', '$nexttid') AND displayorder>='0'");
while($threadt = $db->fetch_array($query)) {
$lastthread = $threadt['tid'] == $lasttid ? $threadt : $lastthread;
$thread = $threadt['tid'] == $tid ? $threadt : $thread;
$nextthread = $threadt['tid'] == $nexttid ? $threadt : $nextthread;
}

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

[ 本帖最后由 习明 于 2007-11-8 21:37 编辑 ]
本帖最近评分记录
  • 小铭铭 威望 +5 精品文章 2007-10-31 11:53
  • itotti 金币 +1 我很赞同 2007-10-30 15:33
占位更新

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

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

[ 本帖最后由 小水水 于 2007-11-2 23:38 编辑 ]
很好很强大
。。。。。。。。。
我在那一角落患过伤风

DiscuzS
挺好
如果你的问题长时间没有回应,请将帖子地址报告给版主。

请各位自觉遵守各项版规,方便自己,也方便他人:http://www.discuz.net/thread-902407-1-1.html
不是发过了么?重复发贴?好象在哪看过。
 
1楼和2楼的两个上下主题优化各有特点
水水的这个在不增加查询的情况下在当前主题显示其tid-1和tid+1帖子的标题 优点是不加查询 提高效率 缺点是由于直接用tid增减来取上下主题 所以取到的帖子不一定是当前版块的 而且当删除了tid临近的主题时 就不会显示了
2楼那个帖子的楼主和我在7楼发的方法思路是一致的 就是在读取帖子的时候增加两次查询获取对应版块的上下主题 优缺点刚好和水水的方法相对
Por los momentos dificiles ya entendi que la flor mas bella sera siempre para mi
因这所有的挫折 我终于明白 那最美丽的花朵 是为自己而盛开
`顶了```` ````````````````````````````````
卖烧烤滴小贩!loaoding@live.com
没什么本事只会偷。。。本事! 嘿嘿^_^暂时没有个人网站哦!
支持楼主!
比较实用的功能!
5.5的时候我把他加在一楼下面方便浏览啦!
郁闷,刚才网络延迟,不小心发重复啦!

[ 本帖最后由 HY清风 于 2007-10-30 14:47 编辑 ]
发新话题
版块跳转