织梦DedeCMS二次开发联动筛选功能的实现(含多选功能)2

作者:石头的博客 | 分类:学习总结| 浏览:111 | 评论:

一、文件夹说明:

incluede         核心函数目录

templets         前台模板目录

 

二、安装说明

1.把这些文件夹全部复制到根目录粘贴,或者按文件夹结构逐个复制进去替换原文件;

2.登录管理后台,在 核心 - 频道模型 - 内容模型管理 找到您要设置筛选的模型,这里以“普通文章”为例,点击右边的编辑按钮,在出来的页面中切换到“字段管理”,

  点击“添加新字段”,出来的页面就可以设置模型的参数了。其中“表单提示文字:”就是字段提示名称(推荐用中文),前台显示的筛选类名也是用它;“字段名称:”

  是写进数据库的字段名,一定要用英文,前台筛选时提交的url参数名称就是使用它;“数据类型”选“使用option下拉框”;默认值那里就是设置筛选的参数列表了,中

  英文均可的,多个参数使用英文逗号分隔;其他均保留默认。

 

三、核心函数说明

1.模型筛选调用的核心函数写在include下的extend.func.php文件,第24-95行为我们所写的函数,wwwcms_filter函数用于过滤字符,防止sql注入;AddFilter是用来处理筛

  选过程的函数。

2.真正实现筛选的文件是arc.listview.class.php,主要靠$filtersql这个变量增加查询条件,当没有检测到筛选参数时此变量为空值,不会影响原查询。

3.调用方法说明:

  相当简单,在需要显示筛选的地方加入 {dede:php} AddFilter(模型ID); {/dede:php} 即可,例:{dede:php} AddFilter(1); {/dede:php}。

  如果需要以下拉列表的形式筛选,请使用 {dede:php} AddFilter(模型ID,2); {/dede:php} ,例:{dede:php} AddFilter(1,2); {/dede:php}。

  如果要指定使用哪些自定义参数,请使用 {dede:php} AddFilter(1,2,'字段名1,字段名2,字段名3'); {/dede:php} ,例{dede:php} AddFilter(1,2,'chicun,pinpai,star'); {/dede:php}

  'chicun,pinpai,star' 是指定的字段名,多个字段用半角逗号分隔。

 

  注意事项:

           1.模型ID可以在核心 - 频道模型 - 内容模型管理 找到,该页面的id号即是模型ID;

           2.前台调用时,不能嵌套于织梦标签之内。

           3.如果前台调不出来,请到后台:系统 - 系统设置 - 系统基本参数 - 其他选项 - 禁用模板标签 ,把“php”删除后保存。

 

四、关于样式问题

因为前台模板千变万化,我们没有写css,写也也未必适合您的网站。在这里我们给出css方案,我们可以指定一个有ID的容器,然后在容器里调用筛选类别,那么我们就可以

通过ID来定义css。例:<div id="filter">{dede:php} AddFilter(1); {/dede:php}</div>,当未被选中时,文字外面的标签是<a></a>,选中后返回的标签是<span></span>,

这样我们就可以分别定义它们的样式了。css代码可以写在页头,或者写进模板目录的css文件,默认是在templets/default/style/这个目录,我们可以写在dedecms.css或

page.css这两个文件其中一个,建议page.css。例如我们要使选中后的选项文字为红色加粗体,则在page.css后面加上这样一段代码:#filter span{ color:#F00; font-weight:bold; },

我们也可以定义链接文字(非选中的选项)的样式,如文字颜色设成灰色、不要下划线:#filter a{ color:#CCC; text-underline:none; }。更多样式就需要您自由发挥了。

 

五、其他说明

程序开发已经完成,由于任何程序都可能存在bug,因此您在将来的使用中可能会出现不可预料的问题,我们承诺对bug终身免费修复的,如果您在使用中发现问题,请联系我们

免费修复。

这个方法是完美实现的,缺点就是必须用下载下来的二个文件,或根据本网站的另一篇:织梦DedeCMS二次开发联动筛选功能的实现(含多选功能)进行比对替换自己网站上的那两个文件 。gbk和utf-8两个版本的文件都有,请下载。

原文地址:http://www.361jl.com/xxzj/170.html 转载请保留原文地址,尊重作者版权,谢谢!!!

支付宝打赏微信打赏

PS:修改之前请先做好备份,因某些原因导致方法无法实现可以与我联系:,尽量靠自己,实在不行再找我,,嘿嘿!!!

上一篇:织梦DedeCMS二次开发联动筛选功能的实现(含多选功能)     下一篇:织梦自定义表单页面调用留言时间

网名:石头的博客

姓名:石头

籍贯:河南省

现居:郑州市

职业:网站维护、seo

副业:聊天、娱乐、陪伴家人

喜欢的书:新奇小说

喜欢的音乐:有韵律的

网站分类
想去看大海

微信