ShopEx文章页增加上一篇下一篇功能
生活随笔
收集整理的這篇文章主要介紹了
ShopEx文章页增加上一篇下一篇功能
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
在所有的文章頁中,會經(jīng)常發(fā)現(xiàn)都會有這么一個功能,能引導用戶去查看上一篇文章或下一篇文章,而在ShopEx中,我DEZEND了一下文章模型,并沒有找到上一篇這樣的函數(shù)功能,因此,這就需要我們手動在對應的文章控制器中自己去添加一個這樣的功能。 文章控制器對應文件:\core\shop\controller\ctl.article.php 找到這個文件,我們需要操作的就是在這個文件尾加一個我們自己的函數(shù)如下:
function getPrevAndNextArticle($currentArticleId, $nodeId){//查找上一篇和下一篇的函數(shù)
$nodeId = $nodeId == ''?0:$nodeId;
$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD) or die('Could not connect: ' . mysql_error());
mysql_select_db(DB_NAME) or die('Could not select database');
//查找上一篇
$sql_prev = "SELECT * FROM ".DB_PREFIX."articles WHERE ifpub='1' AND
node_id=$nodeId AND
article_id<$currentArticleId ORDER BY article_id DESC LIMIT 0,1";
$result = mysql_query($sql_prev) or die('Query failed: ' . $sql_prev);
$prev = mysql_fetch_array($result, MYSQL_ASSOC);
mysql_free_result($result);// 釋放結果集
//查找下一篇
$sql_next = "SELECT * FROM ".DB_PREFIX."articles WHERE ifpub='1' AND
node_id=$nodeId AND
article_id>$currentArticleId ORDER BY article_id ASC LIMIT 0,1";
$result = mysql_query($sql_next) or die('<br/>Query failed: ' . $sql_next);
$next = mysql_fetch_array($result, MYSQL_ASSOC);
mysql_free_result($result);// 釋放結果集
//mysql_close($link);//不能關閉連接,否則頁面空白
return array('prev'=>$prev, 'next'=>$next);
} 增加完這個函數(shù)以后,就需要在Index()函數(shù)中引用,增加以下代碼
$this->pagedata['extra'] = $this->getPrevAndNextArticle($articleid, $this->pagedata['article']['node_id']); 控制器這樣就完成了,接下來需要操作的就是修改模板 找到適當?shù)奈恢?#xff0c;添加以下代碼
上一篇:<{if $extra.prev}><a href="/?article-<{$extra.prev.article_id}>.html"><{$extra.prev.title}></a><{else}>沒有了<{/if}>
下一篇:<{if $extra.next}><a href="/?article-<{$extra.next.article_id}>.html"><{$extra.next.title}></a><{else}>沒有了<{/if}>
好了,這樣上一篇下一篇功能已經(jīng)實現(xiàn),趕快動手修改吧~
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎
總結
以上是生活随笔為你收集整理的ShopEx文章页增加上一篇下一篇功能的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【一】Drupal 入门之新建主题
- 下一篇: 【二】Drupal 入门之新建主题