如何实现在织梦dedecms中高效过滤采集内容?

织梦dedecms采集过滤万能代码如下:,,``php,function filter($content) {, $content = str_replace("{#}", "", $content);, $content = preg_replace("/]*˃/", "", $content);, $content…
织梦dedecms采集过滤万能代码如下:,,“
php,function filter($content) {, $content = str_replace("{#}", "", $content);, $content = preg_replace("/]*>/", "", $content);, $content = strip_tags($content);, $content = trim(stripslashes($content));, return $content;,},

织梦dedecms采集过滤万能代码

在织梦CMS(DedeCMS)中,采集内容时常常需要对一些不必要的代码进行过滤,例如广告、链接等,本文将详细介绍如何利用织梦CMS的内置标签和正则表达式来设置万能的过滤代码,确保采集到的内容更加纯净和有效,以下是具体内容:

过滤常见HTML标签

1、超链接

保留文字内容:如果希望仅去除超链接标签而保留其内部的文字内容,可以使用以下代码:

“`dede

{dede:trim}<a([^>]*)>{/dede:trim}

{dede:trim}</a>{/dede:trim}

“`

去除所有内容:如果希望完全去除超链接及其内部的所有内容,可以采用以下代码:

“`dede

{dede:trim}<a([^>]*)>([^<]*)</a>{/dede:trim}

“`

2、脚本调用

过滤JavaScript广告:为了过滤掉网页中的JavaScript广告代码,可以使用以下代码:

“`dede

{dede:trim}<script([^>]*)>([^<]*)</script>{/dede:trim}

“`

3、DIV标签

过滤DIV标签:如果希望去除DIV标签及其内部的所有内容,可以使用以下代码:

“`dede

{dede:trim}<div([^>]*)>([^<]*)</div>{/dede:trim}

“`

仅去除DIV标签:如果只希望去除DIV标签而不删除其内部内容,可以使用以下代码:

“`dede

{dede:trim}<div([^>]*)>{/dede:trim}

{dede:trim}</div>{/dede:trim}

“`

其他常用过滤规则

1、过滤摘要和关键字

去除摘要和关键字:如果希望去除文章中的摘要和关键字标签,可以使用以下代码:

“`dede

如何实现在织梦dedecms中高效过滤采集内容?

{dede:trim}{/dede:trim}

“`

2、简单替换

替换特定词语:如果需要将文章中的某些词语替换为其他词语,可以使用以下代码:

“`dede

{dede:trim replace=’替换后的词语’}要替换的词语{/dede:trim}

“`

高级应用

1、长度限制

长度限制:如果默认的标题长度限制不够用,可以通过修改include/inc_arcpart_view.php文件来增加标题的长度限制,例如将标题长度从30增加到60:

“`php

if($titlelen==””) $titlelen = 60; // 修改这里的数值即可调整标题长度

“`

2、综合过滤示例

综合应用多个过滤规则:在实际应用中,可能需要综合使用多种过滤规则来达到最佳效果,同时过滤超链接、脚本和DIV标签:

“`dede

{dede:trim}<a([^>]*)>{/dede:trim}

{dede:trim}</a>{/dede:trim}

{dede:trim}<script([^>]*)>([^<]*)</script>{/dede:trim}

{dede:trim}<div([^>]*)>([^<]*)</div>{/dede:trim}

“`

表格展示

过滤类型 过滤代码 说明
超链接 {dede:trim}

]*)>{/dede:trim}
去除链接标签,保留文字
超链接 {dede:trim}

]*)>([^<]*){/dede:trim}
去除链接及其内容
JavaScript广告 {dede:trim}

]*)>([^<]*){/dede:trim}

过滤JavaScript广告
DIV标签 {dede:trim}
]*)>([^<]*)

{/dede:trim}

去除DIV及其内容
标题空格 {dede:trim} {/dede:trim} 去除标题中的空格
替换特定词语 {dede:trim replace='替换后的词语'}要替换的词语{/dede:trim} 替换特定词语

常见问题解答FAQs

1. 问:为什么采集后的文章版面会错位?

答:版面错位通常是由于未彻底过滤掉DIV标签及其内部内容导致的,建议使用如下代码彻底过滤DIV标签及其内容:

{dede:trim}<div([^>]*)>([^<]*)</div>{/dede:trim}

2. 问:如何保留链接中的文字内容但去除链接标签?

答:可以使用以下代码来实现这一目标:

{dede:trim}<a([^>]*)>{/dede:trim}
{dede:trim}</a>{/dede:trim}

这样,链接标签会被去除,但其中的文本内容会被保留。

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

给TA打赏
共{{data.count}}人
人已打赏
网络分享

如何在织梦DedeCMS中调用全站评论总数?

2024-9-28 12:58:23

网络分享

企业级服务器究竟能做些什么?

2024-9-28 12:58:27

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索