程序员人生 网站导航

SS7解决上一篇下一篇的问题终极版

栏目:DedeCMS时间:2013-11-21 21:37:08

  1:修改处理程序viewnews.php
  找到:
  include template($tplname);

  在其前面加入

以下为引用的内容:
$title_a = $_SGLOBAL['db']->result($_SGLOBAL['db']->query('SELECT subject FROM '.tname('spaceitems').' WHERE itemid < ''.$itemid.'' AND catid = ''.$thecat['catid'].'' AND folder='1' AND type='news' ORDER BY itemid DESC LIMIT 0,1'), 0);
if(!$title_a) $title_a = '';

$title_b = $_SGLOBAL['db']->result($_SGLOBAL['db']->query('SELECT subject FROM '.tname('spaceitems').' WHERE itemid > ''.$itemid.'' AND catid = ''.$thecat['catid'].'' AND folder='1' AND type='news' ORDER BY itemid LIMIT 0,1'), 0);
if(!$title_b) $title_b = '';

  2:修改模版文件news_view.html.php

  找到上一遍及下一遍处

以下为引用的内容:
<div id="article_pn"><a class="box_l" href="{S_URL}/batch.common.php?ction=viewnews&amp;op=up&amp;itemid=$news[itemid]&amp;catid=$news[catid]">上一篇</a> <a class="box_r" href="{S_URL}/batch.common.php?action=viewnews&amp;op=down&amp;itemid=$news[itemid]&amp;catid=$news[catid]">下一篇</a></div>

  将其替换为

以下为引用的内容:
<div id="article_pn"><span class="box_l">上一篇:<a href="{S_URL}/batch.common.php?action=viewnews&op=up&itemid=$news[itemid]&catid=$news[catid]" class="viewnewsup">$title_a</a></span> <span class="box_r">下一篇:<a href="{S_URL}/batch.common.php?action=viewnews&op=down&itemid=$news[itemid]&catid=$news[catid]">$title_b</a></span></div>

  3:缺点是由于需要提取上下一片的标题,因此多消耗了数据库处理时间,除了缓存信息ID的上下一遍标题,没什么好的办法,所以官方也一直没有修改这个地方。

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐