织梦的联动效果在分类模型里有,但是,如果想让文章模型或者自定义模型也有联动的效果,怎么办?
比如:按照地区+类型+价格分类筛选,可以用文字模型类的方式,自定义字段,做联动效果如图:

后台字段类型:

后台模板里新增字段:



联动类别管理里添加所需要的自定义字段:

优化升级
2019.7.2更新 加入支持织梦手机端分类联动筛选,已更新至下载包里,直接上传覆盖即可。
如果调用不显示三级城市,请参考《织梦联动类别地区调用不显示第三级城市的解决方法》
实现教程:
1.增加一个文件:include/arc.plugin_listview.class.php
具体代码见附件中对应的文件(解压附件--查找到附件中该路径下的文件即可,下面方法同。太傻瓜的提示步骤了,嘿嘿)
2.在plus/list.php中引入arc.plugin_listview.class.php插件文件(代码大概放在22行)
在if(isset($TotalResult)) $TotalResult = intval(preg_replace("/[^d]/", '', $TotalResult));代码后面加上以下代码:
//自定义字段搜索开始
$Query_String= $_SERVER['QUERY_STRING'];
$cArr= array();
$prams= explode('&', $Query_String);
foreach($pramsas$key=> $value){
$item_prams= explode('=', $value);
if($item_prams[0] != 'tid') $cArr[$item_prams[0]] = urldecode($item_prams[1]);
}
if(count($cArr) > 0 ){
require_onceDEDEINC."/arc.plugin_listview.class.php";
$lv= newPluginListView($tid,$cArr);
if($lv->IsError) ParamError();
$lv->Display();
exit();
}
//自定义字段搜索结束
3.在include aglib目录下 增加一个解析文件,newinfolink.lib.php
4、修改/images/enums.js这个文件
5.在模板文件中调用:
使用{dede:newinfolink}{/dede:newinfolink}这样的配对标签调用即可
{dede:newinfolink}
<div class="prolist_choicewrap">
<div class="prolist_pricebox">
<div class="prolist_price">
标的类型 :
</div>
<ul class="prolist_priceitem clear">
[field:linkallleixing/]
[field:leixing /]
</ul>
</div>
<div class="prolist_pricebox">
<div class="prolist_price">
价格筛选 :
</div>
<ul class="prolist_priceitem clear">
[field:linkallfenlei/]
[field:fenlei /]
</ul>
</div>
<div class="prolist_pricebox">
<div class="prolist_price">
标的位置 :
</div>
<ul class="prolist_priceitem clear">
[field:linkallplacea/]
<li class="prolist_pricelist"style="border:none;"><select name="prov"class="select"onchange="location.href=this.options[this.selectedIndex].value;">
[field:linkallplace/]
</select></li>
<li class="prolist_pricelist"style="border:none;"><select name="city"class="select"onchange="location.href=this.options[this.selectedIndex].value;">
[field:nativeplace /]
</select></li>
<li class="prolist_pricelist"style="border:none;"><select name="area"class="select"onchange="location.href=this.options[this.selectedIndex].value;">
[field:county /]
</select></li>
</ul>
</div>
</div>
{/dede:newinfolink}
在include aglib ewinfolink.lib.php 这个文件里可以修改自己所需要的前端样式。此附件是utf-8编码,需要GBK请自行转码。
说明:此插件支持任意自定义模型。
PS:若在网站顶部出现一串代码,请打开include/arc.plugin_listview.class.php这个文件,在162行找到echo $this->addSql;这个代码注释或者删除即可
作者:六久阁织梦建站工作室
链接:https://www.jianshu.com/p/37cd7c693e56
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。