帝国CMS-无限联动插件 v1.01

2018-05-22 01:52:10 围观 :

 本插件适用于帝国CMS7.0正式版,压缩包提供“简体GBK、简体UTF”正式版本。同时也是给大家制作帝国CMS插件提供一种格式范例,期待大家制作更多的插件。

 
注释:其他版本请修改/e/extend/linkage/install/install.php中的  ENGINE=MyISAM AUTO_INCREMENT=1 ;",$ecms_config['db']['dbchar']));  为  ENGINE=MyISAM AUTO_INCREMENT=1 ;",$phome_db_dbchar));
 
 
********************     安装插件     ********************
 
 
1、下载插件,解压在根目录下,完整的路径为/e/extend/linkage/。
 
 
 
 
2、导入标签:登录后台→模版→标签→管理标签→导入标签→选择标签文件linkage.bq,马上导入。导入后生成的php文件代码复制粘贴在e/class/userfun.php中
linkage.bq标签导入文件在对应编码的插件目录中,自行查找!
 
 
生成的代码如下:
 
//---------------------------无限联动插件自定义标签函数文件
function user_Linkage($mid,$f,$isadd,$isq,$value,$cs){
$value=(int)$_POST[$cs];
if (!$value){
printerror2("联动菜单不能为空",''); }
return $value; }
function user_Linkage_Echo($linkage_a,$linkage_b,$linkage_d=' > '){
global $empire,$navinfor,$public_r,$dbtbpre;
$linkage_id=(int)$linkage_a;
$linkage_b=(int)$linkage_b;
if(!$linkage_id){
echo "";
}else{
$name=$empire->fetch1("select linkage_id,linkage_name,linkage_type,linkage_path from {$dbtbpre}linkage where linkage_id='$linkage_id'");//输出名称
echo $linkage_b==1?$name[linkage_name]:'';
if ($linkage_b!=1){
if ($name&&$linkage_b==0){
$query="select linkage_name from {$dbtbpre}linkage where linkage_id in ($name[linkage_path])";}
if ($name&&$linkage_b>1){
$query="select linkage_id,linkage_name from {$dbtbpre}linkage where linkage_id in ($name[linkage_path])";
$totalquery="select count(*) as total from {$dbtbpre}linkage where linkage_id in ($name[linkage_path])";
$num=$empire->gettotal($totalquery);//取得总条数
$start=$num-$linkage_b+1;
$query=$query." LIMIT $start , $num";}
$sql=$empire->query($query);
while($row=$empire->fetch($sql)){
echo $row[linkage_name].$linkage_d;}
echo $name[linkage_name];
}}}
 
3、安装插件数据库:登录系统后台后,在浏览器中执行 /e/extend/linkage/index.php 文件,依提示进行安装;
 
 
4、获取联动代码以及使用:登录后台→插件→无限联动→管理联动→生成联动菜单(内有详细的生成说明)→获取复制到的代码
复制代码到模型表单中(联动字段后面)。
 
小技巧:联动字段的input可以添加type="hidden"隐藏。 
 
 
小技巧实例:<input type="hidden" name="liand" type="text" id="liand" value="<?=$ecmsfirstpost==1?"":htmlspecialchars(stripSlashes($r[liand]))?>" size="">
 
 
5、添加字段:登录后台→系统→管理数据表→管理字段→增加字段→
新建一个字段,字段类型int,单行文本框,字段处理函数:user_Linkage##后面加上select下拉菜单的name值,一般是最后一级。比如生成的菜单最后一级代码为:
<select class="ld-select-11" name="ld113">
那么字段处理函数就是user_Linkage##ld113。
 
注意:select的class的值最好不要修改,如需修改的话下面js也要修改。
 
 
6、前台调用使用标签:
 
[linkage]菜单ID,路径级别,'分隔符'[/linkage]
 
参数说明: 
菜单ID:模型中联动菜单字段的名称,如内容页使用:$navinfor['字段名']
路径级别:几级菜单添几,0为输出全部路径,1为输出当前菜单名称
如:菜单叫“中国”的省、市、区三级联动,0 就 把“中国”也输出,3就只输出省、市、区。
分隔符:菜单名称之间的分割符号
 
 
7、插件安装完毕!
 
 
 
 
********************     卸载插件     ********************
1、在浏览器中执行 //e/extend/linkage/index.php 文件,依提示进行卸载;
 
 
2、提示卸载完成后,删除 /e/extend/linkage/ 目录;
 
3、修改相关字段和模型表单。
 
4、卸载完毕!
 
********************     更新专区     ********************
2013年01月11日 13:33
修正联动菜单为空时,前台无判断导致无法生成或者动态页面显示不全的问题。
 
2013年3月28日 
修复一些小细节,做了部分优化(速度上)
 
发布正式版,本版本理论上支持6.0以上(6.0~6.6需要修改安装包文件编码读取函数,ECMS7.0修改了此处)
 

 







 
linkage.zip
文件类型: .zip d7b0074641a9fa0bdcafdfab49f8378c.zip (55.23 KB)

 

    匿名评论
  • 评论
人参与,条评论

相关文章

    无相关信息
网站分类