织梦/dedecms采集怎么去除a标签
dedecms采集去除a标签代码
DedeCMS采集规则过滤替换技巧20090114 15:491.采集去除链接
[Copy to clipboard]CODE:
]*)>([^<]*)
让field:title 标题突破30这个长度,修改代码的方法
找到./include/inc_arcpart_viephp
行291 :
if($titlelen=="") $titlelen = 30;
修改为
if($titlelen=="") $titlelen = 60;
就可以了,然后,你可以这样调用了
[field:title function="cn_substr('@me',38)" /]
把这个延伸一下:关于inc_arcpart_viephp
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. 采集过虑中去掉链接保留文字的方法!
柏老大的方法是<a ([^>]*)>([^<]*)</a>
这样做会去掉<a hf.......>与</a>之间的字符!这样整个文章就少了部分字符,不完整了!
后来我多次测试,总算找到了正确的使用方法!如下:
<a([^>]*)>
</a>
做成两条采集规则就可以了!
在实际使用中好像([^<]*)([^>]*)两条一起使用才行!
3. 过滤div
]*)>
过滤js
]*)>([^<]*)
过滤未知变量字符
固定(.*)固定
4.dede万能过滤代码
以下是常用的正则表达式标签
<tbody(.*)>
</tbody>
<table(.*)>
</table>
<tr(.*)>
</tr>
<td(.*)>
</td>
<font(.*)>
</font>
<a(.*)>
</a>
<param(.*)>
<embed(.*)</embed>
<object(.*)</object>
<iframe(.*)</iframe>
<form(.*)</form>
<input(.*)>
<scrīpt(.*)</scrīpt>
<style(.*)</style>
<!(.*)>
以下为不常用的正则表达式标签
<div(.*)>
</div>
<center(.*)>
</center>
<p(.*)>
</p>
<span(.*)>
</span>
<img(.*)>
/////////////////////////////////////
5.织梦标题不全,鼠标指向显示全部的代码:
[field:title function=' ( strlen("@me")>40 ? cn_substr("@me",40): "@me" ) '/]
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 带超连接关键字 如何去掉
全部去
^<a*'>*</a>$
上一篇:[luoguP2526] [SHOI2001]小狗散步(二分图最大匹配)
下一篇:[luoguP3302] [SDOI2013]森林(主席树 + 启发式合并 + lca)