模板文件:

{%get name=plist class="did":$read.did,pid:$read.pid%}
<li class="fl">{%if $read.ctitle!=''%}上一篇:<a class="infolist2" title="{%$read.title%}" href="{%$read.link%}">{%$read.ctitle%}</a>{%/if%}</li>
{%/get%}
{%get name=plist class="did":$read.did,pid:$read.pid,class:1%}
<li class="fr">{%if $read.ctitle!=''%}下一篇:<a class="infolist2" title="{%$read.title%}" href="{%$read.link%}">{%$read.ctitle%}</a>{%/if%}</li>
{%/get%}

修改php文件:
/interface/lib_plist.php

增加17行
$pid = intval($para['pid']);//print($pid);
修改28行:
//先按pid排序查询,如果都相同则按did查询。先按pid排序,如果都相同则按did排序
if ($class) {
  $sql = "SELECT * FROM $db_table WHERE isclass=1 AND tid = $read[tid] AND (pid > $pid or (pid = $pid and did > $did)) ORDER BY pid ASC, did ASC LIMIT 0,1";
} else {
  $sql = "SELECT * FROM $db_table WHERE isclass=1 AND tid = $read[tid] AND (pid < $pid or (pid = $pid and did < $did)) ORDER BY pid DESC, did DESC LIMIT 0,1";
}

/interface/lib_plist.php

 <?php

 class lib_plist extends connector {

     function lib_plist() {
$this->softbase();
parent::start_pagetemplate();
$this->pagetemplate->libfile = true;
}
function call_plist($lng, $para, $filename = 'plist', $outHTML = null) {
$para = $this->fun->array_getvalue($para);
$lngpack = $lng ? $lng : $this->CON['is_lancode'];
$lng = ($lng == 'big5') ? $this->CON['is_lancode'] : $lng;
include admin_ROOT . 'datacache/' . $lng . '_pack.php';
$did = intval($para['did']);//print($did);
$pid = intval($para['pid']);//print($pid);
if (empty($did)) {
return false;
}
$class = intval($para['class']);
$class = empty($class) ? 0 : $class;
$db_table = db_prefix . 'document';
$read = $this->get_documentview($did);
if (!$read['tid']) {
return false;
}
//先按pid排序查询,如果都相同则按did查询。先按pid排序,如果都相同则按did排序
if ($class) {
$sql = "SELECT * FROM $db_table WHERE isclass=1 AND tid = $read[tid] AND (pid > $pid or (pid = $pid and did > $did)) ORDER BY pid ASC, did ASC LIMIT 0,1";
} else {
$sql = "SELECT * FROM $db_table WHERE isclass=1 AND tid = $read[tid] AND (pid < $pid or (pid = $pid and did < $did)) ORDER BY pid DESC, did DESC LIMIT 0,1";
}
$rslist = $this->db->fetch_first($sql);
if (is_array($rslist)) {
$typeread = $this->get_type($rslist['tid']);
$rslist['typename'] = $typeread['typename'];
$rslist['typelink'] = $this->get_link('type', $typeread, $lngpack);
$rslist['pageclass'] = $typeread['pageclass']; $rslist['link'] = $this->get_link('doc', $rslist, $lngpack);
$rslist['buylink'] = $this->get_link('buylink', $rslist, $lngpack);
$rsList['enqlink'] = $this->get_link('enqlink', $rsList, $lngpack);
$rslist['ctitle'] = empty($rslist['color']) ? $rslist['title'] : "<font color='" . $rslist['color'] . "'>" . $rslist['title'] . "</font>";
}
$this->pagetemplate->assign('read', $rslist);
$this->pagetemplate->assign('lng', $lng);
$this->pagetemplate->assign('lngpack', $LANPACK);
if (!empty($outHTML)) {
$output = $this->pagetemplate->fetch(null, null, $outHTML);
} else {
$output = $this->pagetemplate->fetch($lng . '/lib/' . $filename);
}
return $output;
} }

espcms内容页上下篇按后台手动排序号的更多相关文章

  1. dedecms内容页 上下篇 添加文章描述方法

    dedecms5.7修改后 运行正常! 在根目录include文件夹中修改arc.archives.class.php文件,812行左右:为$query添加查询字段arc.description,分别 ...

  2. 织梦cms文章内容页上下篇单独获得URL和文章名称修改

    1.打开/include/arc.archives.class.php ,查找   $this->PreNext['pre']    //约813行 在其下一行插入: $this->Pre ...

  3. espcms内容页相册调用代码

    {%forlist from=$photo key=i%} <li style="position: absolute; width: 600px; left: 0px; top: 0 ...

  4. ASP.NET在母版页或内容页上获取控件ID

    原本想给一个button添加一个confirm,不同的分数提示不同的信息(大于80合格,小于80不合格,提示是否提交),最开始用了button.Atribute.Add();但是它每次获取到的是lab ...

  5. 鲜为人知帝国CMS内容页调用上一篇和下一篇的精华方法汇总

    <span style="float:left">上一篇:[!--info.pre--]</span><span style="float: ...

  6. espcms列表页ajax获取内容 - 并初始化swiper

    <link rel="stylesheet" href="swiper.min.css" type="text/css" media= ...

  7. 内容页获取当前栏目的上一级栏目ID

    发现V9在列表页可以用$parentid 得到当前栏目的父级ID,但在内容页这个函数的值却为空了,需要按下面的写法才行, V9 在内容页获取当前栏目的上一级栏目ID {$CAT[parentid]} ...

  8. phpcms v9文章内容页调用上一篇下一篇的方法(转)

    phpcms v9文章内容页调用上一篇下一篇的方法如下,魔客吧(www.moke8.com)提示您直接摘取如下代码中的红色部分即可: 上一篇:{$previous_page[url]}" t ...

  9. dedecms文章页的上下篇颠倒的问题

    dedecms的文章页底下的上下篇,如果按照时间排序的话,最新的一篇应该是最上了,但是底下还是会显示上一篇文章还有,然后下一篇文章没有了,就是颠倒了.如何修改呢. 1.修改include目录下arc. ...

随机推荐

  1. linux文件特殊权限

  2. Qt——浅谈样式表

    优秀的程序,不仅要有严密逻辑,而且应该有美观的外表.从软件界面,便可看出你是否用心在做,是否是一个有思想的人. Qt样式表的术语和语法规则和HTML CSS有很多相似之处. 样式规则 Qt中样式规则由 ...

  3. PhpStorm XDebug 远程调试

    现在我们自己公司的各种开发和测试服务器,都是使用阿里云的服务器.一些PHP的项目,无法在本地搭建完整的环境,在外网服务器上调试更方便定位问题.发现网上没有完整的关于如何配置PHPStorm和XDebu ...

  4. 重构alert,confirm

    最近写了一个重构的alert,confirm控件,调用时直接使用alert,confirm即可 //调用方法 alert("提示语") window.confirm('你确定要删除 ...

  5. 1125MySQL Sending data导致查询很慢的问题详细分析

    -- 问题1 tablename使用主键索引反而比idx_ref_id慢的原因EXPLAIN SELECT SQL_NO_CACHE COUNT(id) FROM dbname.tbname FORC ...

  6. js在手机端不能正确显示

    在html页面head中加入<meta name="viewport" content="width=device-width, initial-scale=1.0 ...

  7. iOS小知识点(非UI部分)

    1. _cmd 表示当前方法的@SEL指针, - (void)putString{} 对于这个函数_cmd 等效于@selector(putString)

  8. Sigmaplot 13 破解版什么地方可以下载

    SigmaPlot是一款专业的科学绘图软件,可用于绘制准确.高质量的图形和曲线,支持一百多种2D.3D科学图形,同时拥有强大的数据统计分析功能.现在网络不断发展,软件使用日益频繁,今天小编就和大家分享 ...

  9. ORB-SLAM(三)地图初始化

    单目SLAM地图初始化的目标是构建初始的三维点云.由于不能仅仅从单帧得到深度信息,因此需要从图像序列中选取两帧以上的图像,估计摄像机姿态并重建出初始的三维点云. ORB-SLAM中提到,地图初始化常见 ...

  10. ORB-SLAM(四)追踪

    最近在读ORB-SLAM的代码,虽然代码注释算比较多了,但各种类和变量互相引用,看起来有点痛苦.索性总结了一下Tracking部分的代码结构,希望能抓住主要思路,不掉坑里. 追踪 追踪部分的主要思路是 ...