查看: 983|回复: 0

帝国CMS 副页面:一篇文章多个动态内容页

[复制链接]

618

主题

425

回帖

79

日志

管理员

积分
5471
QQ
发表于 2024-5-3 04:32:26 | 显示全部楼层 |阅读模式
659875.jpg.jpg
信息页:调用一个模板,展示一条帝国cms的信息;副页面:调用另外一个模板,展示同一条帝国cms的信息。
第一步:复制文件
将 e/action/ShowInfo.php 文件复制一份,并重命名,比如命名为 MoreInfo.php
第二步:修改文件
打开刚才复制并重命名的文件,并进行修改
(1)找到 //moreport 和 //缓存,大约在35行至46行之间,这之间的几行代码删除
也就是如下代码删除:
  1. //moreport
  2. if(Moreport_ReturnMustDt())
  3. {
  4.         $class_r[$classid]['showdt']=2;
  5. }
  6. //是否支持动态内容页
  7. if($class_r[$classid]['showdt']!=2)
  8. {
  9.         $titleurl=sys_ReturnBqTitleLink($r);
  10.         Header("Location:$titleurl");
  11.         exit();
  12. }
复制代码
(2)查找 $newstemp_r= ,在其上一行插入代码:

  1. if($_GET['newstempid']){
  2.         $r['newstempid']=$_GET['newstempid'];
  3. }
复制代码

也就是,修改后的代码变成了:
  1. //取得内容模板
  2. $r[newstempid]=$r[newstempid]?$r[newstempid]:$class_r[$r[classid]][newstempid];
  3. if($_GET['newstempid']){
  4.         $r['newstempid']=$_GET['newstempid'];
  5. }
  6. $newstemp_r=$empire->fetch1("select tempid,temptext,showdate from ".GetTemptb("enewsnewstemp")." where tempid='$r[newstempid]'");
复制代码

第三步:使用方法
访问地址是
  1. 网址/e/action/MoreInfo.php?classid=栏目id&id=信息id&newstempid=此页的内容模板id
复制代码

可以看到,访问地址与自带的动态内容模板类似,但要多一个newstempid参数,方便指定不同模板
注意事项
这个页面不支持正文分页,如需分页还需要另行修改。
不能使用系统自带的缓存功能,否则会跟自带动态页面混淆。
关于如何用伪静态访问这个页面,也可以联系我们。
上士闻道,勤而行之;中士闻道,若存若亡;下士闻道,大笑之。不笑不足以为道!
回复 关闭延时

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则

快速回复 返回顶部 返回列表