织梦dedecms联动筛选功能的实现方法 。 如果你没看懂,或者直接不想动手操作,你可以在线留言,我会及时为你解决。修改的代码如下:
//获得附加表的相关信息!!此段为添加内容!!!by scv dedecms 联动筛选功能
$addtable = $this->ChannelUnit->ChannelInfos['addtable'];
if($addtable!="")
{
$addJoin = " LEFT JOIN `$addtable` ON arc.id = ".$addtable.'.aid ';
$addField = '';
$fields = explode(',',$this->ChannelUnit->ChannelInfos['listfields']);
foreach($fields as $k=>$v)
{
$nfields[$v] = $k;
}
if(is_array($this->ChannelUnit->ChannelFields) && !empty($this->ChannelUnit->ChannelFields))
{
foreach($this->ChannelUnit->ChannelFields as $k=>$arr)
{
if(isset($nfields[$k]))
{
if(!empty($arr['rename'])) {
$addField .= ','.$addtable.'.'.$k.' as '.$arr['rename'];
}
else {
$addField .= ','.$addtable.'.'.$k;
}
}
}
}
if (isset($_REQUEST['tid']))
{
foreach($_GET as $key => $value) {
$filtersql .= ($key!="tid" && $key!="TotalResult" && $key!="PageNo") ? " AND $addtable.".wwwcms_filter($key)." = '".wwwcms_filter(urldecode($value))."'" : '';
}
}
}
else
{
$addField = '';
$addJoin = '';
}
//添加内容结束!!!by scv dedecms 联动筛选功能
2、extend.func.php 在其最后面增加如下代码:PHP文件部分就OK了!接下来就自定义模型了。自定义模型之前,我先让你们看看最终效果:
这里需要注意的就是字段的类型如下图所示: 最后一步 模板调用: {dede:php}AddFilter(17,1,'leibie,bingzhong,yongfa');{/dede:php}
解释一下 AddFilter(17,1,'leibie,bingzhong,yongfa')
其中的 17就是 频道ID,后面括号的是自定义的字段名称。 好了,到此结束,就这么简单,如果你还没没看懂,请留言给我。 祝你成功! |