找回密码
 注册

Discuz x2 主题列表页和帖子内容页增加跳转到指定页数功能

php 发表于 2012/3/14 07:40 | 显示全部楼层 |阅读模式
效果如下图所示

Discuz X2不支持用户输入页数自动跳转,而且每一次只能显示11页供选择,今天说说如何为Discuz x2 主题列表页增加跳转到指定页数功能,实现这个功能有很多种方法,这里只讲其中一种,这种方法的原理是利用<input>标签传递参数到<a>标签实现跳转。
帖子显示页面有页底和页尾两个地方,它们分别存放在两个文件中,一个是template\default\forum\forumdisplay.htm,另一个是template\default\forum\forumdisplay_list.htm。
首先用文本编辑软件打开template\default\forum\forumdisplay.htm,搜索以下代码
  1. <div id="pgt" class="bm bw0 pgs cl">
复制代码
在这一句下面有一个$multipage,在$multipage下面添加一行,写入以下代码并保存(不要修改代码,否则可能会出错,UTF-8版本请先将文档保存为UTF-8编码,否则修改后网页会乱码,下同)
  1. <div class="y mtn">&nbsp;&nbsp;直达第 <input type="text" value='' size="4" onkeyup="document.getElementById('www_qsyz_net').href='forum.php?mod=forumdisplay&fid=$_G[fid]&page='+this.value" onkeydown="if(event.keyCode==13) {window.location.href=document.getElementById('www_qsyz_net').href;return false;}" /> 页 <a id="www_qsyz_net" class="cur1">跳转</a></div>
复制代码
然后打开template\default\forum\forumdisplay_list.htm,搜索以下代码
  1. <div class="bm bw0 pgs cl">
复制代码
在这一句下面有一个$multipage,在$multipage下面添加一行,写入以下代码并保存
(以下代码和上面的并不一样,不要直接复制上面的代码)
  1. <div class="y">  直达第 <input type="text" value='' size="4" onkeyup="document.getElementById('qsyz_net').href='forum.php?mod=forumdisplay&fid=$_G[fid]&page='+this.value" onkeydown="if(event.keyCode==13) {window.location.href=document.getElementById('qsyz_net').href;return false;}" /> 页 <a id="qsyz_net" class="cur1">跳转</a></div>
复制代码
参照上述两个文件的修改方法,帖子内容页的修改也不轻而易举起了.修改的页面在template\default\forum\viewthread.htm中,搜索
  1. <div class="pgt">$multipage</div>
复制代码
在这段代码下面添加
  1. <div class="y mtn">  直达第 <input type="text" value='' size="4" onkeyup="document.getElementById('www_qsyz_net').href='forum.php?mod=forumdisplay&fid=$_G[fid]&page='+this.value" onkeydown="if(event.keyCode==13) {window.location.href=document.getElementById('www_qsyz_net').href;return false;}" /> 页 <a id="www_qsyz_net" class="cur1">跳转</a></div>
复制代码
然后搜索
  1. <div class="pgs mtm mbm cl">
复制代码
  1. $multipage
复制代码
下面添加以下代码
  1. <div class="y">  直达第 <input type="text" value='' size="4" onkeyup="document.getElementById('qsyz_net').href='forum.php?mod=forumdisplay&fid=$_G[fid]&page='+this.value" onkeydown="if(event.keyCode==13) {window.location.href=document.getElementById('qsyz_net').href;return false;}" /> 页 <a id="qsyz_net" class="cur1">跳转</a></div>
复制代码
到此大功告成,将这三个文件上传到对应目录刷新即可看到版块内的主题列表导航中和主题内页回复页数列表中已经有了如上图所示的输入数值快速跳转的表单。
本教程为轻松E站原创,如需转载请注明出处。

手机版|轻松E站

轻松E站

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