DedeCms分类信息联动筛选,省级与地市分开联动,注意:只适用于5.6版,其它版本没有测试,只应用于分类信息模型。其它联动可参照修改。

可能标题说的不是很清楚,下面以图为示例:

DedeCms分类信息联动筛选,省级与地市分开联动

如上图所示,默认是显示北京的区县,当点击上海市时,地市处显示上海的县区。这下大家伙明白了吧!

现在开始代码修改操作,只需要修改一个文件。

打开/include/taglib/infolink.lib.php,找到:

Copy to ClipboardLiehuo.Net Codes

//地区链接 
if(empty($nativeplace)) 
{ 
foreach($em_nativeplaces as $eid=>$em) 
{ 
if($eid % 500 != 0) continue; 
$fields['nativeplace'] .= " <a href='{$baseurl}plus/list.php?channelid={$channelid}&tid={$typeid}&nativeplace={$eid}&infotype={$infotype}'>{$em}</a>\r\n"; 
} 
} 
else 
{ 
$sontype = ( ($nativeplace % 500 != 0) ? $nativeplace : 0 ); 
$toptype = ( ($nativeplace % 500 == 0) ? $nativeplace : ( $nativeplace-($nativeplace%500) ) ); 
$fields['nativeplace'] = "<a href='{$baseurl}plus/list.php?channelid={$channelid}&tid={$typeid}&nativeplace={$toptype}&infotype={$infotype}'><b>{$em_nativeplaces[$toptype]}</b></a> >> "; 
foreach($em_nativeplaces as $eid=>$em) 
{ 
if($eid < $toptype+1 || $eid > $toptype+499) continue; 
if($eid == $nativeplace) { 
$fields['nativeplace'] .= " <b>{$em}</b>\r\n"; 
} 
else { 
$fields['nativeplace'] .= " <a href='{$baseurl}plus/list.php?channelid={$channelid}&tid={$typeid}&nativeplace={$eid}&infotype={$infotype}'>{$em}</a>\r\n"; 
} 
} 
} 

把上面注释掉,然后在下面添加如下代码:

Copy to ClipboardLiehuo.Net Codes引用的内容:[www.dede58.com]
foreach($em_nativeplaces as $eid=>$em) 
{ 
if($eid % 500 != 0) continue; 
$fields['nativeplace'] .= " <a href='{$baseurl}plus/list.php?channelid={$channelid}&tid={$typeid}&nativeplace={$eid}'>{$em}</a>\r\n"; 
} 
//地区链接 
if(empty($nativeplace)) 
{ 
foreach($em_nativeplaces as $eid=>$em) 
{ 
if($eid > 999 ) continue; 
$fields['diqu'] .= " <a href='{$baseurl}plus/list.php?channelid={$channelid}&tid={$typeid}&nativeplace={$eid}'>{$em}</a>\r\n"; 
} 

} 
else 
{ 
$sontype = ( ($nativeplace % 500 != 0) ? $nativeplace : 0 ); 
$toptype = ( ($nativeplace % 500 == 0) ? $nativeplace : ( $nativeplace-($nativeplace%500) ) ); 

foreach($em_nativeplaces as $eid=>$em) 
{ 
if($eid < $toptype+1 || $eid > $toptype+499) continue; 
if($eid == $nativeplace) { 
$fields['diqu'] .= " <b><a href='{$baseurl}plus/list.php?channelid={$channelid}&tid={$typeid}&nativeplace={$nativeplace}'>{$em}</a></b>\r\n"; 
} 
else { 
$fields['diqu'] .= " <a href='{$baseurl}plus/list.php?channelid={$channelid}&tid={$typeid}&nativeplace={$eid}'>{$em}</a>\r\n"; 
} 
} 
} 

保存就可以了。谢谢阅读烈火网提供的DedeCMS教程。

免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。