DedeCMS多条件筛选以筛选词为标题
数以万计的DedeCMS的站长提出的问题,有相关帖子,DedeCMS本身模板里面没有直接的筛选功能,有时候需要对产品进行分类,本帖既能解决DedeCMS筛选问题,又能产生利于SEO优化排名的标题,伪静态地址修改。
也有部分站长确实按照步骤去做了,但是还是出不来,下面的来看看运用SEO思维是怎么做站的吧。SEO思想即是分享也是价值。
用重庆装修公司的网站举例,先看最后效果,利于优化的标题,面包屑导航里面也有筛选的关键字。移动端筛选移步到《DedeCMS筛选简单实现方法不改后台源文件》,DedeCMS按最新最热筛选移步到《DedeCMS列表ajax按更新时间,点击,评论,星级排序》
1.修改include/arc.listview.class.php和include/extend.func.php文件
这两个文件改动比较大,建议大家直接下载附件压缩包里面的文件替换。下载链接:http://pan.baidu.com/s/1ntt73i5
特别提醒
由于这两个文件做二次开发的时候经常用到,所以替换的时候要注意备份源文件。
2.添加自定义字段
具体的字段添加方法可以自己搜,或参考《DedeCMS如何添加自定义字段与前台调用》。筛选的自定义字段“zxfg”、“zxmj”、“hx”数据类型都是select。
3.html部分
调用比较简单 {dede:php}AddFilter(7,1,'zxfg,hx,zxmj');{/dede:php},说明:数字7为自定义字段的频道id为7,1是使用超链接进行选择,2是使用select下拉框选,自定义字段中间用半角逗号分开。这里有可能遇到无法运行php的情况,这是由于DedecmsV5.7版本后面设置了一个限制,在后台点击:系统设置>其他选项,在模板引擎禁用标签的“php”删除即可。
4.css样式部分
.shaixuan{width:1088px;height:auto;margin:0 auto;border:1px solid #c0c0c0} .scv-shaixuan{padding:10px;text-align:left;font-size:14px;line-height:14px} .scv-shaixuan a{margin-left:3px;color:#000} .scv-shaixuan a:hover{color:#c00} .scv-shaixuan span{padding:0 5px;color:#fff;background:#c00}
到这里,全部筛选功能实现,接下来是标题生成部分。
5.标题、面包屑导航生成
网站头部
<title> {dede:field name='words' runphp='yes'}@me=$_GET['zxfg'].$_GET['hx'].$_GET['zxmj'];{/dede:field} {dede:field.seotitle /} </title>
生成如:"现代简约风格两室一厅50-60平米_频道名_网站名"的标题。
面包屑导航
<p class="place">当前位置 : {dede:field name='position'/} {dede:field name='words' runphp='yes'}@me=$_GET['zxfg'].$_GET['hx'].$_GET['zxmj'];{/dede:field} </p>
生成如:“首页>频道页>现代简约风格两室一厅50-60平米”的面包屑导航。
6.伪静态部分
为什么页面采用伪静态?一般认为动态页面百度蜘蛛抓取有困难,或者页面标题长度过长,不利于用户体验。网上的实现方法多是把中文换成拼音的形式,但是摸索一段时间后觉得百度仍然抓取得到,也就没继续研究下去。如果有朋友执意要弄成伪静态那就研究一下正则表达式。参考文章《DedeCMS实现TAG伪静态(万网虚拟主机)》和文章《DedeCMS实现全站php伪静态》
2017-03-21写了一篇新的文章,《DedeCMS多条件筛选带删除功能》样式如下: