title
菜鸟吧 首页 站长学堂 帝国教程 查看内容

帝国CMS怎样在自定义列表中获取当前列表ID

2019-10-17 13:21| 发布者: admin| 查看: 18| 评论: 0|原作者: 菜鸟哥

摘要: 本文实例讲述了帝国CMS在自定义列表中获取当前列表ID的方法。分享给大家供大家参考,具体如下:今天用帝国CMS做一个项目时,发现帝国自定义列表中无法获取当前自定义列表的ID。分析帝国源码后以现,帝国默…… ...

本文实例讲述了帝国CMS在自定义列表中获取当前列表ID的方法。分享给大家供大家参考,具体如下:


今天用帝国CMS做一个项目时,发现帝国自定义列表中无法获取当前自定义列表的ID。分析帝国源码后以现,帝国默认传出的值为0。下面简单记录一下如何通过修改源码实现“帝国CMS自定义列表获取当前列表ID”


上面所提到的项目功能简介:


用户用自定义列表功能创建了大量的自定义列表,然后在这些自定义列表中要获取到同分类自定义列表名称,并且当前栏目名称的样式要加上特定的CSS样式。


自定义列表模板代码片段



代码如下:

[e:loop={'select listid,listname,filepath from [!db.pre!]enewsuserlist where classid=1',100,24}]

<li<?=($bqr[listid]==$GLOBALS[navclassid]?' class="this"':'')?>><?=$bqr[listname]?></li>

[/e:loop]

默认请况下 $GLOBALS[navclassid] 的值是为空的, 所以我们只需修改程序将当前自定义列表的ID值赋给$GLOBALS[navclassid]即可


帝国源程序修改


通过phpxref工具分析程序运行流程发现,生成自定义信息列表的函数为ReUserlist(),ReUserlist()进一步调用ListHtml()函数生成信息列表,并传入$enews事件为4,至此即可通过ListHtml()函数传入列表ID。


打开(/e/class/functions.php) 找到函数 ListHtml(可搜索 function ListHtml 快速查找) 中找到如下代码



代码如下:

$GLOBALS['navclassid']=$classid;

更改成



代码如下:

$GLOBALS['navclassid']=$enews==4?$userlistr['listid']:$classid;

保存(注意文件编码问题)


重新生成自定义列表,所需功能已实现!



路过

雷人

握手

鲜花

鸡蛋

最新评论

一键注册登录,免回复/免积分下载更多的源码资源教程

客服中心 搜索
Archiver 手机版 小黑屋 网站地图

Copyright © 2015-2026 菜鸟吧论坛 |找资源研究学习当然上菜鸟吧论坛

警告:本站所有资源收集世界互联网,请下载后24小时之内删除,否則後果自負!
WARNING: ‌All resources from the web. Delete within 24 hours or consequences at your own risk!
郑重声明:站内所有资源均来自互联网或会员投稿发布, 如果侵犯了权益请联系删除,E-mail:cniaoba@qq.com 商用请购买正版。

返回顶部