帝国CMS无限联动插件V2.0{全新内核 更多自由} {支持帝国CMS7.0|7.2版}

时间:2017-11-02 11:38:17来源:作者:点击:

 本插件理论上支持帝国cms任何版本。本插件在帝国CMS7.0正式版{UTF-8}下制作完成,GBK自行转换文件代码,理论上通用。
使用过程中有发现BUG或者错误以及意见建议的请跟帖说明。我们会即时跟进。


本插件可用于{自定义}的地区省市,甚至全球城市,也可应用于其他对应联动。预留接口很丰富,请自行扩展发挥。默认提供全国省市数据。仅供参考
多级联动,支持Ajax动态获取数据并缓存数据,动态生成下级select菜单,设置动态生成"option"第一个条目作为提示项,自动选择唯一选项的菜单,设置回调函数在onChange事件触发时获取下拉菜单相关信息。
 

使用方法:
第一步、下载插件解压到/e/extend/yl_linkage/目录下。
第二步、执行需要的SQL代码,后台自己增加插件连接/e/extend/yl_linkage/(不会的自行脑补帝国基础知识)
数据库包含:
1、空数据库
2、全国省市数据


第三步、增加Userfun.php自定义函数处理代码(这里的代码只是前台使用)。
更多详情请自行研究使用发挥拓展。
本插件仅作抛砖引玉之功能。

帝国论坛发东西很不方便,
详细说明请移步插件官方查看:帝国CMS插件网

PS:以后插件不再制作安装程序等傻瓜式的东西,插件只给懂得的人用   你,懂得!

联动前端框架资料

感谢本插件前端框架作者!!! 



最后更新日期:
2014/11/25 18:00   修正初始数据库中全国省市城市的错误数据。请重新清空数据表替换为新的即可
2014/12/24 12:00 修复小BUG,多个菜单缓存问题。感谢 xiangbo80 测试意见
压缩包已更新,原用户
action.php文件中第205行: $str.='$linkage_1=';   改为: $str.='$linkage_'.$rf['id'].'=';

2015/04/10 10:00 //更新 缓存中增加子集合集,这样更利于其他复杂操作

更新方法 action.php中的函数 Shengcheng 替换为以下代码:



//生成php缓存文件
function Shengcheng($id){
     global $empire,$dbtbpre;
     $rfsql="select * from {$dbtbpre}extend_linkage where id='$id' and type=0 and parentid=0";
    $rf=mysql_fetch_array($empire->query($rfsql),MYSQL_ASSOC);//查找父分类
    $linkage[$rf['id']]=$rf;
        $query_rf="select id from {$dbtbpre}extend_linkage where parentid='$rf[id]'";
                $sql_rf=$empire->query($query_rf);
                while($r_rf=mysql_fetch_array($sql_rf,MYSQL_ASSOC)){
                        $linkage[$rf['id']]['zfl'].=$r_rf['id'].',';
                }
                $linkage[$rf['id']]['zfl']=substr($linkage[$rf['id']]['zfl'],0,-1);
    if(!$rf){
         printerror2("只能针对顶级ID生成缓存",'',9);
    }
    $query="select * from {$dbtbpre}extend_linkage where type='$id'";
    $sql=$empire->query($query);
    while($r=mysql_fetch_array($sql,MYSQL_ASSOC)){
        $query_zfl="select id from {$dbtbpre}extend_linkage where parentid='$r[id]'";
                $sql_zfl=$empire->query($query_zfl);
                while($r_zfl=mysql_fetch_array($sql_zfl,MYSQL_ASSOC)){
                        $r['zfl'].=$r_zfl['id'].',';
                }
                $r['zfl']=substr($r['zfl'],0,-1);
        $linkage[$r['id']]=$r;
    }
    $filename=ECMS_PATH.'e/extend/yl_linkage/data/linkage_cache_'.$rf['id'].'.php';//缓存文件路径
    $str='<?'.PHP_EOL;
    $str.='$linkage_'.$rf['id'].'=';
    $str.=var_export($linkage,TRUE);
    $str.=PHP_EOL.'?>';
    file_put_contents($filename,$str );
     if(file_put_contents($filename,$str )){
        printerror2("缓存生成成功!",'',9);
    }
}



2015/04/14 一处笔误造成菜单名称无法修改:修复方法linkage.php中搜索Editlinkage修改为Editmore即可 


2015/05/18 修复信息有空格 列表不显示的小BUG

附件已更新!懒人直接下载覆盖即可

即可

帝国CMS无限联动插件V2.0详细安装步骤! 

第一步,下载插件解压到/e/extend/yl_linkage/目录下。
第二步,利用mySQL工具如phpMyAdmin等,将“空初始数据库.sql和“全国省市.sql”在帝国网站数据库中“运行 SQL 查询”创建出来。
第三步,在后台,系统->扩展菜单->管理菜单->增加插件菜单分类->管理菜单->菜单名称->链接地址:/e/extend/yl_linkage/ ,默认普通链接。
第四步,到系统->系统设置->后台安全相关配置->“开启后台来源认证码”设置为“关闭验证”。
第五步,将userfun.txt内容复制到/e/class/Userfun.php中。
第六步,到插件中,可看到自定义的插件菜单。
 

您可能感兴趣的文章

无相关信息

文章评论