當前位置:首頁 > CMS教程 > DeDecms > 列表

dedecms中解決dede:arclist分頁問題

發布:smiling 來源: PHP粉絲網  添加日期:2019-06-01 16:10:20 瀏覽: 評論:0 

如何解決dedecms中dede:arclist分頁問題?

大家一般在文章模板頁是用dede:arclist這個標簽來顯示列表的,基本的代碼比較簡單,由兩部分組成:

1、javascript

在文章模板頁這個文件的里,添加如下代碼:

2、dede代碼

在指定的顯示列表的位置,添加如下代碼:

  1. {dede:arclist row='100' tagid='index' pagesize='10' titlelen='120'
  2.  
  3. [field:global name=cindex /]. [field:title/] 
  4. {/dede:arclist} 

隨著這個列表的分頁導航代碼是:{dede:arcpagelist tagid='index'/}

需要說明的是,這里的row的值要填大一些,我一開始沒填,結果列表的數量就是pagesize的數量。

保存文件,上傳并重新生成,發現列表正常顯示,分頁導航也正常顯示了,但是列表序號和之前遇到的問題一樣,每一頁都從1開始。

在切換頁碼的時候,列表的序號是會變的,發現序號還和一個文件有關,就是/plus/arcmulti.php,也就是說,dede:arclist這個標簽,如果你添加了序號代碼,它是有兩次的生成過程,第一次是頁面生成的時候,這時候的序號是通過/include/taglib/arclist.lib.php決定的,當用戶點擊分頁導航頁碼瀏覽其它頁面時,因為使用的是ajax,此時的序號是由/plus/arcmulti.php生成的。

到/plus/arcmulti.php去,這個頁面里有一個現成的$strnum可以用,照著上一篇序列號的做法,加了$GLOBALS['cindex'] = 0和$GLOBALS['cindex'] = $strnum + $i + 1;點擊分頁導航時,列表的序號顯示正常了!

那第一次顯示的列表序號怎么辦呢,后來一想,那就簡單處理了,仍然在/include/taglib/arclist.lib.php創建$GLOBALS['cindex'](為的是一致),然后讓它和autoindex一樣,在for循環里++就行了,也就是說只需要考慮他第一頁的自然序號顯示就行。

Tags: dedecms分頁 dede:arclist

分享到:

福利彩票25选5开奖结果