zoukankan      html  css  js  c++  java
  • 织梦/dedecms采集怎么去除a标签

    dedecms采集去除a标签代码

    DedeCMS采集规则-过滤-替换-技巧2009-01-14 15:491.采集去除链接
    [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}

  • 相关阅读:
    【java Itext Pdf】itext pdf隔行换色 itext5添加表格背景颜色
    linux常用安装
    linux 定时执行shell脚本
    Linux crontab定时任务案例
    Oracle 常用的几个命令
    RS报表中根据变量比较大小来判断颜色
    如何利用TYPE 实现列转行
    Linux crontab概念
    关于下拉框联动选择的做法
    Oracle 启动常见的疑难
  • 原文地址:https://www.cnblogs.com/zqw111/p/10844471.html
Copyright © 2011-2022 走看看