当前位置 : 主页 > 网站建设 > 正文

DedeCMS多条件筛选实现类似淘宝选择颜色

原创

重庆seo2017-04-15 16:36:14阅读()dedecmsCSS自定义筛选A+ / A-

DedeCMS多条件筛选实现类似淘宝选择颜色

有些企业站DedeCMS多条件联动筛选需要有颜色,实现思路是通过不同的class命名,单独写CSS样式,下载文件参考原来的的《DedeCMS多条件筛选以筛选词为标题

修改include/extend.func.php文件,找到下面的字段,红色为增加部分,仔细对比就行。

    if(is_array($dtp->CTags))
     {
       $count = 0; //by7,增加foreach循环次数
       foreach($dtp->CTags as $tid=>$ctag)
       {
        $fieldsname = $fieldsnamef ? explode(",", $fieldsnamef) : explode(",", $ctag->GetName());
if(($loadtype!='autofield' || ($loadtype=='autofield' && $ctag->GetAtt('autofield')==1)) && in_array($ctag->GetName(), $fieldsname) )
        {
$href1 = explode($ctag->GetName().'=', $filterarr);
$href2 = explode('&', $href1[1]);
$fields_value = $href2[0];
$count++; //循环次数自增
//$dede_addonfields .= '<div class="shaixuan count' . $count . '"><b>'.$ctag->GetAtt('itemname').':</b>'; //-by7
switch ($type) {
 case 1:
  $dede_addonfields .= '<div class="shaixuan count' . $count . '"><b>'.$ctag->GetAtt('itemname').':</b>';
  $dede_addonfields .= (preg_match("/&".$ctag->GetName()."=/is",$filterarr,$regm) ? '<a title="全部" href="' . $GLOBALS['cfg_basehost'] . str_replace("&" . $ctag->GetName() . "=" . $fields_value,"",$filterarr) . '">全部</a>' : '<span class="hover">全部</span>'); //修改为绝对路径,下面同理
  $addonfields_items = explode(",",$ctag->GetAtt('default'));
  for ($i=0; $i<count($addonfields_items); $i++)
  {
$href = stripos($filterarr,$ctag->GetName() . '=' ) ?  str_replace("=" . $fields_value,"=" . urlencode($addonfields_items[$i]),$filterarr) : $filterarr . '&' . $ctag->GetName() . '=' . urlencode($addonfields_items[$i] );//echo $href;
$dede_addonfields .= ($fields_value != urlencode($addonfields_items[$i]) ? '<a class="a' . $i . '" title="' . $addonfields_items[$i] . '" href="' . $GLOBALS['cfg_basehost']  . $href . '">' . $addonfields_items[$i] . '</a>' :  '<span class="hover">' . $addonfields_items[$i] . '</span>' 
);
  }
  $dede_addonfields .= '</div>';
 break;

前台源代码效果

DedeCMS多条件筛选选择颜色不同

CSS样式就可以写成

.count3 a{display:inline-block;}
.count3 a0{background:#c00}
.count3 a2{background:#red}

       就可以实现类似淘宝商品的颜色筛选功能,自己动下手,有不明白的可以咨询QQ:570521548

    扩展阅读

    本文地址:https://www.vi586.com/web/410.html
    版权声明:原创文章,版权归重庆SEO吖七所有,欢迎分享本文,支持原创,转载请保留出处

    赞(0)