dede织梦_采集规则技巧-过滤-替换
>首页 -> 社会专题 -> 硬件网络 2013-05-20 来源: 作者: 【】 浏览:810

以下是引用片段:

接口

@me=str_replace('被替换字','替换字',@me);

官方自带

{dede:trim replace=''}<a([^>]*)>(.*)</a>{/dede:trim}

{dede:trim replace=''}<script([^>]*)>(.*)</script>{/dede:trim}

{dede:trim replace=''}<!--(.*)-->{/dede:trim}

{dede:trim replace=''}<table([^>]*)>(.*)</table>{/dede:trim}

{dede:trim replace=''}<style([^>]*)>(.*)</style>{/dede:trim}

{dede:trim replace=''}<img([^>]*)>{/dede:trim}

{dede:trim replace=''}<object([^>]*)>(.*)</object>{/dede:trim}

{dede:trim replace=''}<embed([^>]*)>(.*)</embed>{/dede:trim}

{dede:trim replace=''}<iframe([^>]*)>(.*)</iframe>{/dede:trim}

{dede:trim replace=''}<param([^>]*)>(.*)</param>{/dede:trim}

{dede:trim replace=''}<div([^.]*)>{/dede:trim}

{dede:trim replace=''}</div>{/dede:trim}

1.采集去除链接

[Copy to clipboard]CODE:

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

--------------------------------

让field:title 标题突破30这个长度,修改代码的方法

找到./include/inc_arcpart_view.php

行291 :

if($titlelen=="") $titlelen = 30;

修改为

if($titlelen=="") $titlelen = 60;

就可以了,然后,你可以这样调用了

{dede:channelArtlist typeid='0' col=1 tablewidth='100%'}

{dede:arclist row="10"}

[field:title function="cn_substr('@me',38)" /]

{/dede:arclist}

{/dede:channelArtlist}

把这个延伸一下:关于inc_arcpart_view.php

function GetArcList($typeid=0,$row=10,$col=1,$titlelen=30,$infolen=160,

$imgwidth=120,$imgheight=90,$listtype="all",$orderby="default",$keyword="",

$innertext="",$tablewidth="100",$arcid=0,$idlist="")

这里的参数都可以更改你实际需要的模板元素尺寸大小.

2. 采集过虑中去掉链接保留文字的方法!

柏老大的方法是{dede:trim}<a ([^>]*)>([^<]*)</a>{/dede:trim}

这样做会去掉<a hf.......>与</a>之间的字符!这样整个文章就少了部分字符,不完整了!

后来我多次测试,总算找到了正确的使用方法!如下:

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

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

做成两条采集规则就可以了!

在实际使用中好像([^<]*)([^>]*)两条一起使用才行!

3. 过滤div

{dede:trim}]*)>{/dede:trim}

{dede:trim}

{/dede:trim}

过滤js

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

过滤未知变量字符

固定(.*)固定

4.dede万能过滤代码

以下是常用的正则表达式标签

{dede:trim}<tbody(.*)>{/dede:trim}

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

{dede:trim}<table(.*)>{/dede:trim}

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

{dede:trim}<tr(.*)>{/dede:trim}

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

{dede:trim}<td(.*)>{/dede:trim}

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

{dede:trim}<font(.*)>{/dede:trim}

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

{dede:trim}<a(.*)>{/dede:trim}

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

{dede:trim}<param(.*)>{/dede:trim}

{dede:trim}<embed(.*)</embed>{/dede:trim}

{dede:trim}<object(.*)</object>{/dede:trim}

{dede:trim}<iframe(.*)</iframe>{/dede:trim}

{dede:trim}<form(.*)</form>{/dede:trim}

{dede:trim}<input(.*)>{/dede:trim}

{dede:trim}<scrīpt(.*)</scrīpt>{/dede:trim}

{dede:trim}<style(.*)</style>{/dede:trim}

{dede:trim}<!--(.*)-->{/dede:trim}

以下为不常用的正则表达式标签

{dede:trim}<div(.*)>{/dede:trim}

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

{dede:trim}<center(.*)>{/dede:trim}

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

{dede:trim}<p(.*)>{/dede:trim}

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

{dede:trim}<span(.*)>{dede:trim}

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

{dede:trim}<img(.*)>{/dede:trim}

5.织梦标题不全,鼠标指向显示全部的代码:

{dede:arclist titlelen='100'}

[field:title function=' ( strlen("@me")>40 ? cn_substr("@me",40): "@me" ) '/]

{/dede:arclist}

6.dede/inc/inc_archives_functions.php第100行(flash频道远程flash本地化的BUG)

$cfg_uploaddir = $GLOBALS['media_dir'];

修改成

$cfg_uploaddir = $GLOBALS['cfg_other_medias'];

6.发布时间,来源,作者可以通过@me函数实现,如:在自定义处理接口:处输入 @me = "Azure·【博】" 就表示来源为“Azure·【博】”

7.内容的替换:在所采集的文章内容中有多媒体,使用的是相对路径,采集的时候又不想下载,最好的办法就是将地址替换成媒体的实际地址。可以这样实现,在文章内容规则部分的自定义处理接口:处输入@me=str_replace('src="str1','src="str2',@me);

dedecms 带超连接关键字 如何去掉

全部去

{dede:trim}^<a*'>*</a>${/dede:trim}

您看到此篇文章时的感受是:
Tags: 责任编辑:佚名
免责申明: 除原创及很少部分因网文图片遗失而补存外,本站不存储任何有版权的内容。你看到的文章和信息及网址索引均由机器采集自互联网,由于时间不同,内容可能完全不同,请勿拿本网内容及网址索引用于交易及作为事实依据,仅限参考,不会自行判断者请勿接受本站信息,本网转载,并不意味着赞同其观点或证实其内容的真实性.如涉及版权等问题,请立即联系管理员,我们会予以更改或删除,保证您的权利.对使用本网站信息和服务所引起的后果,本网站不作任何承诺.
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论:0条】 【关闭】 【返回顶部
更多
上一篇dede 替换编辑器自动生成div作为.. 下一篇把数据保存到数据库附加表 `dede_..
密码: (新用户注册)

最新文章

图片主题

热门文章

推荐文章

相关文章

便民服务

手机扫描

空间赞助

快速互动

论坛互动
讨论留言

有事联系

有哪个那个什么的,赶紧点这里给DOVE发消息

统计联系

MAIL:gnlt@Dovechina.com
正在线上:1360

版权与建议

任何你想说的