dedecms内容页如何实现自动分页

dedecms内容页如何实现自动分页,第1张

一篇文章内容分别放在两张表中 ,

一张是他的主表,该主表是通用的 dede_archives ,

另一张是附件表 dede_addonXXX

默认包括:

dede_addonarticle 文章附件表

dede_addonimages 附件表

dede_addoninfos 分类信息附件表

dede_addonshop 商品附件表

dede_addonsoft 软件附件表

dede_addonspec 专题附件表

调用方法:

{dede:channelartlist typeid='top'}

这里是typied='top',这个top值可以换为你想要的上级栏目ID,但绝对是不可以为空的。

首先,登录网站后台。

第二,选择系统-》系统基本参数-》性能选项-》(是/否)开启分页标题,开启会影响HTML生成速度-》选择是。

第三,选择开启长文章自动分页-》输入文章自动分页大小。

第四,点击确定。

注意:

合理设置分页大小,过大容易增加服务器负担,过小影响页面美观;

确定保存后,需更新所有文档,清楚网站缓存,才能看到效果。

修改arclist标签的asc属性。

具体代码如下:

{dede:arclistorderway=''asc'}

文章按照顺序排列

{/dede:arclist}

解析原因:

orderway=''值为desc或asc,指定排序方式是降序还是顺向排序,将值修改asc就是顺序排列。

扩展资料

其他属性

1、typeid=''表示栏目ID,在列表模板和档案模板中一般不需要指定,在封面模板中允许用","分开表示多个栏目;

2、row=''表示返回文档列表总数;

3、col=''表示分多少列显示(默认为单列);

4、titlelen=''表示标题长度;

5、infolen=''表示内容简介长度;

6、imgwidth=''表示缩略图宽度;

7、imgheight=''表示缩略图高度;

8、type=''表示档案类型,其中空值、不使用这个属性或type='all'时为普通文档

参考资料:

:arclist

这很简单的啊,左边使用dede:channelartlist指定栏目调用或者dede:channel,右侧使用{dede:fieldcontent/}栏目内容标签。栏目全部设置成封面即可。

你好,根据你提的问题找到相关的解决方法,你可以参考一下

第一种:根据所在栏目ID自动判断显示所在栏目的文章数   

(<span>[field:ID runphp='yes'] @me = GetTotalArc(@me);[/field:ID]</span>)

第二种:指定栏目ID   

{dede:sql sql="SELECT count( ID ) AS c FROM dede_archives where typeid = 栏目id "}

第三种:DedeCMS栏目文章数量统计调用,栏目名称按照文章数量排列  

{dede:sql sql='SELECT dtypename,did,count(daid) as heji FROM dede_arctype d left join 

dede_archives da on datypeid=did where dreid=0 group by dtypename  order by heji desc limit 0,8;'}   

<span class="text_1"><span class="count">[[field:heji/]篇]</span>

<a href="http://你的网址/plus/listphptid=[field:id/]">[field:typename/]共投递稿件</a></span><br /> 

{/dede:sql}

第四种:   修改include/commonfuncphp    在最后加入代码: 

//统计栏目文章数   

function GetTotalArc($tid) { 

global $dsql;

$sql = GetSonIds($tid);

$row = $dsql->GetOne("Select count(id) as dd From dede_archives where typeid in({$sql})");     

return $row['dd'];  }     

在htm 最下方添加:    

{dede:channel type='top' row='8'}

<LI>[field:typename/]

(<span>[field:ID runphp='yes'] @me = GetTotalArc(@me);[/field:ID]</span>)

</LI>

{/dede:channel}    

如果想调用副栏目的数量 就是   

//统计栏目文章数   

function GetTotalArc($tid2){     

global $dsql;     

$sql = GetSonIds($tid2);     

$row = $dsql->GetOne("Select count(id) as dd From dede_archives where typeid2 in({$sql})");     

return $row['dd'];  }

HTM页面不变  现在我们来说说动态调用栏目文章数:  

动态调用主要针对当前列表页的栏目,而当前的栏目是动态的,因此可以利用type标签调用一个函数就行了。  

要调用函数就得增加函数,打开include/commonfuncphp,在其中任一行(<与>的中间任一行)中加上如下函数。 

function dynamic_num($current_id){ 

global $dsql; $t_num = $dsql->GetOne("select count() as num from `dede_archives` where typeid='$current_id'"); 

if(is_array($t_num))

{   

return "本栏目共有"$t_num[num]"篇文章"; }

else{   

return "本栏目共有0篇文章" ; }

 }

在列表页中这样调用:  

{dede:type}[field:id function="dynamic_num(@me)" /]{/dede:type}               

{dede:sql sql="SELECT count(  ) AS c FROM cmsxx_archives WHERE pubdate > UNIX_TIMESTAMP( CURDATE( ) ) "}             

<li class="count">今日更新:<span>[field:c/]</span> 篇</li>             

{/dede:sql}             

{dede:sql sql="Select count(ID) as c From cmsxx_archives WHERE FROM_UNIXTIME(pubdate,'%m')=month(curdate())"}             

<li class="count">当月更新:<span>[field:c/]</span> 篇</li>             

{/dede:sql}                  

{dede:sql sql="select count() as c from cmsxx_archives}             

<li class="count">共有文章:<span>[field:c/]</span> 篇</li>             

{/dede:sql}             

{dede:sql sql="select sum(click) as c from cmsxx_archives"}             

<li class="count">总共阅读:<span>[field:c/]</span> 人次</li>             

{/dede:sql}             

{dede:sql sql="select count(mid) as c from cmsxx_member "}  

<li class="count">共有会员:<span>[field:c/]</span> 名</li>             

{/dede:sql}

还可以指定栏目ID,例如: 

{dede:sql sql="select count() as c from cmsxx_archives where channel in(1,2,3,5,6,9)"}             

<li class="count">共有文章:<span>[field:c/]</span> 篇</li>             

{/dede:sql}

希望以上方法能够帮助到你。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » dedecms内容页如何实现自动分页

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情