您好,欢迎来到菜鸟吧源码网-本站资源仅供学习与参考,禁止用于商业或违法行为!
  • 首 页
  • 下载APP
  • 公告:菜鸟吧APP于2024.9.15正式上线,请首页右上角进入下载,本站资源均来源于互联网及会员投稿发布,所有资源仅供学习参考研究使用,请勿商用或其它非法用途,商用请购买正版,否则产生一切后果由用户自行承担!谢谢!

     

    当前位置:主页 > 站长学堂 > 帝国教程 >
    帝国CMS怎样在自定义列表中获取当前列表ID
    时间:2019-10-17 13:21 作者:菜鸟哥 浏览:收藏 挑错 打印

    本文实例讲述了帝国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;

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


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


    郑重声明:
    本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
    我们不承担任何技术及版权问题,且不对任何资源负法律责任。
    如无法下载,联系站长索要。
    如有侵犯您的版权,请给我们来信:cainiaovip8@qq.com,我们尽快处理。

    帝国CMS7.5在反馈信息页面调用万能标签教程帝国CMS7.5在反馈信息页面调用万能标签
    PHPCMS和帝国CMS比较优缺点PHPCMS和帝国CMS比较优缺点
    帝国CMS后台编辑器怎么才能兼容IE10帝国CMS后台编辑器怎么才能兼容IE10