织梦DedeCMS列表页第一页跟其它页使用不同模板的办法

简介:

有时候我们需要让织梦列表页的第一页跟第二页以及后面的页面的展示效果不同,使用不同的模板,但是目前网上也没有其他比较好的方案,那么下面织梦技术研究中心就给大家介绍一个最简单的办法,通过修改文件来为栏目列表页第一页单独指定一个模板,其余页面则调用另一个模板。

 

具体修改的文件以及代码如下:

 

一、找到并打开include/arc.listview.class.php文件,在里面大约第397行的位置找到Display函数,找到如下代码:


$this->ParseTempletsFirst();

 

在这句代码的上面添加以下代码:

 

if($this->PageNo>1){

 tempfile=GLOBALS['cfg_basedir'].GLOBALS[cfgtempletsdir]."/".GLOBALS['cfg_df_style']."/list_article2.htm";

 this>dtp>LoadTemplate(tempfile);

}

 

上面的代码是判断当列表页数大于1时,织梦就会调用list_article2.htm来作为当前列表页模板了。

 

二、添加以上代码后,在动态浏览栏目时已经能够成功实现了,但会生成栏目静态HTML页后,仍然不能正常调用,还需要继续修改。我们继续在include/arc.listview.class.php文件里面找到如下代码:


this>ParseDMFields(this->PageNo,1);

 

在这句代码的上面添加以下代码:

if($this->PageNo>1){

  tempfile=GLOBALS['cfg_basedir'].GLOBALS[cfgtempletsdir]."/".GLOBALS['cfg_df_style']."/list_article2.htm";

  this>dtp>LoadTemplate(tempfile);

  $this->ParseTempletsFirst();

}

 

修改到这里之后无论是静态页还是动态页都能达到理想的效果了。

 

三、但是如果多个内容模型使用了多个列表页的模板,那么每个内容模型的栏目列表页的第二页都会用list_article2.htm来作为模板,这样我们需要进行修改,具体如下:

 

将第1步跟第2步里面的下面这段代码:


tempfile=GLOBALS['cfg_basedir'].GLOBALS[cfgtempletsdir]."/".GLOBALS['cfg_df_style']."/list_article2.htm";

 

修改为:

 

tmpdir=GLOBALS['cfg_basedir'].$GLOBALS['cfg_templets_dir'];

tempfile=strreplace("tid",this->TypeID,$this->Fields['templist']);

tempfile=strreplace("cid",this->ChannelUnit->ChannelInfos['nid'],$tempfile);

tempfile=tmpdir."/".$tempfile;

tmpfile2=substr(tempfile,0,-4);

tempfile=tmpfile2."2.htm";

 

这样系统就会自动去获取当前内容模型列表页模板后面加了2的模板,例如图集列表页的第一页的模板是list_image.htm,那么图集第二页的模板就是list_image2.htm了,这样,就方便多了。



本文转自 gutaotao1989 51CTO博客,原文链接:http://blog.51cto.com/taoyouth/1881555

目录
打赏
0
0
0
0
344
分享
相关文章
织梦dedecms设置搜索结果页为伪静态规则
dede织梦搜索伪静态,伪静态设置成功后,访问URL地址效果如下
使用vuex记住当前页面页码信息,以便从详情页返回列表页时能还原到上一次页面
使用vuex记住当前页面页码信息,以便从详情页返回列表页时能还原到上一次页面
106 0
|
3月前
|
栏目页在制作过程中要注意什么
一个网页必须要有导航,否则用户就不能找到自己需要的内容。
39 3
discuz门户分类列表页出现重定向过多
discuz门户分类列表页出现重定向过多
69 0
|
10月前
publiccms中将推荐页的内容显示在页面片段中
publiccms中将推荐页的内容显示在页面片段中
小程序警告:根据 sitemap 的规则[0],当前页面 [pagesindexindex] 将被索引
这是一个警告的提示,至于是否影响性能,这个我不太清除。 根据官方文档的说法:微信已开放小程序内搜索,开发者可以通过 sitemap.json 配置,或者管理后台页面收录开关来配置其小程序页面是否允许微信索引。当开发者允许微信索引时,微信会通过爬虫的形式,为小程序的页面内容建立索引。 就是说用户可以根据微信吧爬虫给你提供的索引更快的搜索到你。 最简单的方法就是你直接把配置关了不让他索引:
220 0
phpcms之 如何制作新闻列表页
phpcms之 如何制作新闻列表页
162 1
着陆页有什么特点?详解着陆页的8个特点及作用
着陆页是为特定目的服务的网页,着陆页的主要目的是将访问者转化为线索。虽然有不同的类型和设计,通常情况下,登陆页面将包含一个线索表格,用于要求访客提供联系信息,以换取有价值的东西。
377 0
着陆页有什么特点?详解着陆页的8个特点及作用
DEDE在列表调用当前栏目的文章总数的修改方法
此方法适合织梦dedecmsv5.6及以上版本,其它版本暂未测试,修改方法如下: dede - 598080707.net 打开 include/common.func.php文件,在这个php文件里的?>之前,加上以下代码: function GetTotalArc($t...
845 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等