• 技术文章 >CMS教程 >DEDECMS

    织梦DEDECMS列表页首页怎么跟其它页使用不同模板

    藏色散人藏色散人2020-01-10 09:25:38原创789

    织梦DEDECMS列表页首页怎么跟其它页使用不同模板?

    织梦DEDECMS列表页首页跟其它页使用不同模板的办法

    推荐学习:织梦cms

    有些时候我们需要使列表页的首页跟第二页以及后面的页面的样式不同,修改dede:list标签又很难达到理想的效果,那么织梦猫就为大家介绍一个最简单的办法,就是为首页单独指定一个模板页,其余页面则调用另一个模板页。

    修改的办法如下:

    打开include目录下的arc.listview.class.php文件,找到Display函数(大约在397行),找到如下代码:

    $this->ParseTempletsFirst();

    在这些代码的上方添加以下代码:

    if($this->PageNo>1)
    {
    $tempfile = $GLOBALS['cfg_basedir'].$GLOBALS['cfg_templets_dir']."/".$GLOBALS['cfg_df_style']."/list_article2.htm";
    $this->dtp->LoadTemplate($tempfile); 
    }

    添加之后,在页数大于1时,织梦就会调用list_article2.htm来作为列表页模板了。

    添加以上代码后,在动态浏览栏目时已可以实现,但会发现生成栏目静态HTML页后,仍然没有达到预期目的,

    搜索如下代码:

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

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

    if($this->PageNo>1)
    {
    $tempfile = $GLOBALS['cfg_basedir'].$GLOBALS['cfg_templets_dir']."/".$GLOBALS['cfg_df_style']."/list_article2.htm";
    $this->dtp->LoadTemplate($tempfile);
    $this->ParseTempletsFirst(); 
    }

    好了,现在无论是静态页还是动态页都达到理想的效果了。

    可能还会有疑问,如果一个栏目有多个列表页模板,难道每个栏目列表页的第二页都用list_article2.htm来作为模板?

    解决办法:

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

    改为:

     $tmpdir = $GLOBALS['cfg_basedir'].$GLOBALS['cfg_templets_dir'];
     $tempfile = str_replace("{tid}",$this->TypeID,$this->Fields['templist']);
     $tempfile = str_replace("{cid}",$this->ChannelUnit->ChannelInfos['nid'],$tempfile);
     $tempfile = $tmpdir."/".$tempfile;
     $tmpfile2 = substr($tempfile,0,-4);
     $tempfile = $tmpfile2."2.htm";

    现在就会自动去获取列表页模板后面加了2的模板,例如列表页的模板是list_image.htm,那么第二页的模板就是list_image.htm。

    这样,就方便多了。

    以上就是织梦DEDECMS列表页首页怎么跟其它页使用不同模板的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:DEDECMS
    上一篇:runphp=yes里面怎么嵌套sql语句 下一篇:dede更换成kindeditor后栏目内容无法保存怎么办
    大前端线上培训班

    相关文章推荐

    • 织梦DEDECMS如何调用当前栏目TAG标签• dedecms列表页和内容页如何调用顶级栏目ID• 怎么通过自由列表实现dedecms首页分页• 织梦DedeCMS首页列表页如何动态调用点击次数

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网