帝国CMS结合项使用实例

今天做一个站点时,遇到需要使用结合项的功能,之前大概知道怎么搞,但具体没搞过,今天针对这个功能第一次实地操作

需要实现的效果如图:

1、下载帝国cms结合项插件,这里不在敖述

2、针对原有代码进行修改

原有代码:

  1. <table width="100%" border="0" cellspacing="0" cellpadding="0">
  2. <tbody>
  3. <tr>
  4. <td class="td_left" width="114">适用站点:</td>
  5. <td class="ajax_select_a">
  6.  
  7. <a href="">全部</a>
  8. <a title="帝国CMS企业网站" href="">企业网站</a>
  9. <a title="帝国CMS教育网站" href="">教育网站</a>
  10. <a title="帝国CMS商城网站" href="">商城网站</a>
  11. <a title="帝国CMS图片网站" href="">图片网站</a>
  12. <a title="帝国CMS文章资讯" href="">文章资讯</a>
  13. <a title="帝国CMS软件下载" href="">软件下载</a>
  14. <a title="帝国CMS博客网站" href="">博客网站</a>
  15. <a title="帝国CMS手机网站" href="">手机网站</a>
  16. <br/>
  17. </td>
  18. </tr>
  19. <tr>
  20. <td class="td_left">模板颜色:</td>
  21. <td class="ajax_select_a">
  22. <a href="" class="shaixuan">全部</a>
  23. <a title="黑色" href="">黑色</a>
  24. <a title="橙色" href="">橙色</a>
  25. <a title="白色" href="">白色</a>
  26. <a title="红色" href="">红色</a>
  27. <a title="灰色" href="">灰色</a>
  28. <a title="绿色" href="">绿色</a>
  29. <a title="紫色" href="">紫色</a>
  30. <a title="蓝色" href="">蓝色</a>
  31. <a title="黄色" href="">黄色</a>
  32. <a title="综合" href="">综合</a>
  33.  
  34. <br/>
  35. </td>
  36. </tr>
  37. <tr>
  38. <td class="td_left">兼容设备:</td>
  39. <td class="ajax_select_a">
  40. <a href="" class="shaixuan">全部</a>
  41. <a title="帝国cmsPC模板" href="">PC</a>
  42. <a title="帝国cms手机模板" href="">Mobile</a>
  43. <a title="帝国cms免费模板" href="">PC+Mobile</a>
  44. <a title="帝国cms响应式模板" href="">响应式</a>
  45. <a title="帝国cms自适应模板" href="">自适应</a>
  46.  
  47.  
  48. <br/></td>
  49. </tr>
  50. <tr>
  51. <td class="td_left">模板价格:</td>
  52. <td class="ajax_select_a">
  53. <a href="" class="shaixuan">全部</a>
  54. <a title="0-49" href="">0-49元</a>
  55. <a title="50-199" href="">50-199元</a>
  56. <a title="200-299" href="">200-299元</a>
  57. <a title="300-499" href="">300-499元</a>
  58. <a title="500-699" href="">500-699元</a>
  59. <a title="700以上" href="">700元以上</a>
  60.  
  61. <br/></td>
  62. </tr>
  63. </tbody>
  64. </table>

修改后的完整代码如下:

  1. //显示结合项筛选选项
  2. function user_ShowFieldandChange($ecms=0){
  3. global $public_r;
  4.  
  5. //------- 函数参数设置开始 -----
  6.  
  7. //要显示的结合项字段列表,多个字段用半角逗号“,”隔开
  8. $fieldandvar='hangye,yanse,jianrong,price';
  9.  
  10. //字段显示选项设置,多项用双“#”号隔开,格式:选项说明|==|内容1,值1##内容2,值2
  11. $fieldandval=array();
  12. $fieldandval['hangye']='<td class="td_left" width="114">适用站点:</td><td class="ajax_select_a">|==|全部,##企业网站,企业网站##教育网站,教育网站##商城网站,商城网站##图片网站,图片网站##文章资讯,文章资讯##软件下载,软件下载##博客网站,博客网站##手机网站,手机网站';
  13. $fieldandval['yanse']='<td class="td_left">模板颜色:</td><td class="ajax_select_a">|==|全部,##黑色,黑色##橙色,橙色##白色,白色##红色,红色##灰色,灰色##绿色,绿色##紫色,紫色##蓝色,蓝色##黄色,黄色##综合,综合';
  14. $fieldandval['jianrong']='<td class="td_left">兼容设备:</td><td class="ajax_select_a">|==|全部,##PC,PC##Mobile,Mobile##PC+Mobile,PC+Mobile##响应式,响应式##自适应,自适应';
  15. $fieldandval['price']='<td class="td_left">模板价格:</td><td class="ajax_select_a">|==|全部,##1-49,1__49##50-199,50__199##200-299,200__299##300-499,300__499##500-699,500__699##700元以上,700__5000';
  16.  
  17. //正常链接样式
  18. $fieldandcss='fieldandcss';
  19.  
  20. //已选的选项链接样式
  21. $changefieldandcss='shaixuan';
  22.  
  23. //字段与字段的显示间隔符,格式:开始显示字符|结束显示字符
  24. $fieldexp='<tr><td class="td_left">|<br/></td></tr>';
  25.  
  26. //选项与选项的显示间隔符,格式:开始显示字符|结束显示字符
  27. $valexp='|';
  28.  
  29. //------- 函数参数设置结束 -----
  30.  
  31.  
  32. $userfunecmsver=function_exists('ehtmlspecialchars')?1:0;
  33. //附加参数
  34. $urlcs='';
  35. $mid=(int)$_GET['mid'];
  36. if($mid)
  37. {
  38. $urlcs.='&mid='.$mid;
  39. }
  40. if($_GET['classid'])
  41. {
  42. $classid=RepPostVar($_GET['classid']);
  43. $urlcs.='&classid='.$classid;
  44. }
  45. else
  46. {
  47. if(!$_GET['mid']&&!$_GET['ttid']&&!$_GET['ztid'])
  48. {
  49. $classid=intval($GLOBALS['navclassid']);
  50. $urlcs.='&classid='.$classid;
  51. }
  52. }
  53. if($_GET['ttid'])
  54. {
  55. $ttid=RepPostVar($_GET['ttid']);
  56. $urlcs.='&ttid='.$ttid;
  57. }
  58. if($_GET['ztid'])
  59. {
  60. $ztid=RepPostVar($_GET['ztid']);
  61. $urlcs.='&ztid='.$ztid;
  62. }
  63. if($_GET['firsttitle'])
  64. {
  65. $firsttitle=(int)$_GET['firsttitle'];
  66. $urlcs.='&firsttitle='.$firsttitle;
  67. }
  68. if($_GET['isgood'])
  69. {
  70. $isgood=(int)$_GET['isgood'];
  71. $urlcs.='&isgood='.$isgood;
  72. }
  73. if($_GET['endtime'])
  74. {
  75. $starttime=RepPostVar($_GET['starttime']);
  76. $endtime=RepPostVar($_GET['endtime']);
  77. $urlcs.='&starttime='.$starttime.'&endtime='.$endtime;
  78. }
  79. $line=(int)$_GET['line'];
  80. if($line)
  81. {
  82. $urlcs.='&line='.$line;
  83. }
  84. $tempid=(int)$_GET['tempid'];
  85. if($tempid)
  86. {
  87. $urlcs.='&tempid='.$tempid;
  88. }
  89. if($_GET['orderby'])
  90. {
  91. $orderby=RepPostVar($_GET['orderby']);
  92. $myorder=(int)$_GET['myorder'];
  93. $urlcs.='&orderby='.$orderby.'&myorder='.$myorder;
  94. }
  95. //间隔字符
  96. $fieldexpr=explode('|',$fieldexp);
  97. $valexpr=explode('|',$valexp);
  98. //输出选项
  99. $fr=explode(',',$fieldandvar);
  100. $fcount=count($fr);
  101. $allstr='';
  102. $urladd='';
  103. for($i=0;$i<$fcount;$i++)
  104. {
  105. $field=$fr[$i];
  106. //选项链接
  107. $getval='';
  108. if($_GET[$field])
  109. {
  110. $getval=$userfunecmsver==1?ehtmlspecialchars($_GET[$field],ENT_QUOTES):htmlspecialchars($_GET[$field],ENT_QUOTES);
  111. $urladd.='&'.$field.'='.urlencode($getval);
  112. }
  113. //选项说明
  114. $vsayr=explode('|==|',$fieldandval[$field]);
  115. //选项内容
  116. $valallstr='';
  117. $vr=explode('##',$vsayr[1]);
  118. $vcount=count($vr);
  119. for($vi=0;$vi<$vcount;$vi++)
  120. {
  121. $vtr=explode(',',$vr[$vi]);
  122. if($getval==$vtr[1])
  123. {
  124. $css=$changefieldandcss;
  125. }
  126. else
  127. {
  128. $css=$fieldandcss;
  129. }
  130. $valallstr.=$valexpr[0].'<a href="'.$public_r['newsurl'].'e/action/ListInfo.php?'.$urlcs.'&ph=1<!--url.add-->&'.$field.'='.urlencode($vtr[1]).'" class="'.$css.'">'.$vtr[0].'</a>'.$valexpr[1];
  131. }
  132. $allstr.=$fieldexpr[0].$vsayr[0].$valallstr.$fieldexpr[1];
  133. }
  134. $allstr=str_replace('<!--url.add-->',$urladd,$allstr);
  135. echo $allstr;
  136. }
  137.  
  138.  
  139. //结合项技术

写此文的目的:防止忘记,并且以后做其他网站有结合项时可参考这篇文章的写法

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值