• 全国400电话网上服务平台
    强大号码库资源任选,方便,快捷,快速开通。
    咨询热线:400-1100-266  

    dedecms(织梦系统)常用问题处理方法收集
    POST TIME:2017-11-13 01:07

    1、dede系统安装在子目录下,会员信息链接不对的解决法。

    在网上搜索了很多方法,都得不到解决,其中一个解决方法是:到标签模板里找到memberlist.lib.php 在$row['spaceurl'] = $GLOBALS['cfg_basehost'].'/member/index.php?uid='.$row['userid'];红色处做修改,在'/member前面加上子目录名,如home,这样无法生成主页,方法弃之,第二个方法是将['cfg_basehost']修改成[cfg_cmspath],会员信息链接是对了,自动加上了根目录,但打开首页是乱码,经过研究系统的目录生成方法,大胆尝试,将站点根网址了就是cfg_basehost变更的参数在根网址后面加上根目录,问题得到解决,测试新上传图片,也是正常的,自动在图片地址前加上根目录。此方法适用于5.6GBK版,其它版本没有测试。

    2、后台菜单丢失找回:是缓存文件的问题,删掉data/tplcache 目录,让它自己重新建一个就好了

    1通用过滤标签

    {dede:trim}<span(.*)>{/dede:trim}
    {dede:trim}</span>{/dede:trim}
    {dede:trim}<div(.*)>{/dede:trim}
    {dede:trim}</div>{/dede:trim}
    {dede:trim}<li>{/dede:trim}
    {dede:trim}</li>{/dede:trim}
    {dede:trim}<ul>{/dede:trim}
    {dede:trim}</ul>{/dede:trim}
    {dede:trim}<font(.*)>{/dede:trim}
    {dede:trim}</font>{/dede:trim}
    {dede:trim}<table(.*)>{/dede:trim}
    {dede:trim}</table>{/dede:trim}
    {dede:trim}<tbody(.*)>{/dede:trim}
    {dede:trim}</tbody>{/dede:trim}
    {dede:trim}<tr(.*)>{/dede:trim}
    {dede:trim}</tr>{/dede:trim}
    {dede:trim}<td(.*)>{/dede:trim}
    {dede:trim}</td>{/dede:trim}
    {dede:trim}<a(.*)>{/dede:trim}
    {dede:trim}</a>{/dede:trim}
    {dede:trim}<iframe(.*)</iframe>{/dede:trim}
    {dede:trim}<style(.*)</style>{/dede:trim}
    {dede:trim}<script(.*)</script>{/dede:trim}
    {dede:trim}<option(.*)</option>{/dede:trim}
    {dede:trim}<select(.*)</select>{/dede:trim}

    2 过滤掉视频
    {dede:trim}<embed(.*)>{/dede:trim}
    {dede:trim}</embed>{/dede:trim}
    {dede:trim}<param(.*)</param>{/dede:trim}
    {dede:trim}<object(.*)</object>{/dede:trim}


    3.自定义处理接口。就是PHP代码。只不过 “ @ me 表示当前标记值和最终结果“@ body表示原始网页”“ @ litpic 缩略图”,按照PHP的写法的就OK了。

    4、DedeCMS采集规则二:过滤、替换、技巧

    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="")
    这里的参数都可以更改你实际需要的模板元素尺寸大小.

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

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

    dedecms 带超连接关键字 如何去掉
    全部去
    {dede:trim}^<a*'>*</a>${/dede:trim}
    注:如果需要将采集文章中的某些文字替换成自己的文字的话需要使用 {dede:trim replace="你的文字"}需要替换的文字{/dede:trim}

    6. 过滤div
    {dede:trim}]*)>{/dede:trim}
    {dede:trim}
    {/dede:trim}


    7 过滤js
    {dede:trim}]*)>([^<]*){/dede:trim}


    8 过滤未知变量字符
    {dede:trim}固定(.*)固定{/dede:trim}

    比如:{dede:trim}<STRONG>相关新闻(.*)<font color="#F5FDFF">来源:考试大{/dede:trim}
    就可以过滤掉相关新闻后面的内容


    9 .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}

    10.织梦标题不全,鼠标指向显示全部的代码:
    {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'];

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

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


    13 dedecms 带超连接关键字 如何去掉
    全部去
    {dede:trim}^<a*'>*</a>${/dede:trim}

    应用示例二:来源作者中连接的过滤
    在采集文章的时候,有的系统里面作者或者来源处都有连接,直接采集的话将连接采集回来了,然后由于这两个字段有限制,通常会造成需要采集的内容没有采集回来,所以需要在过滤处添加下面正则过滤

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

    应用示例一:标题中空格的过滤
    经常在采集文章的时候,标题文字里面有空格,采回来后应用很是麻烦,所以需要在过滤处添加下面正则过滤
    {dede:trim} {/dede:trim}
    应用示例二:来源作者中连接的过滤
    在采集文章的时候,有的系统里面作者或者来源处都有连接,直接采集的话将连接采集回来了,然后由于这两个字段有限制,通常会造成需要采集的内容没有采集回来,所以需要在过滤处添加下面正则过滤

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


    应用示例三:文章内容中连接以及其他广告代码的过滤
    这个就不用说了,当需要对所有东西过滤的时候,直接用上面所有的代码过滤就可以,但是实际应用中,我们只需要对连接、动画、调用等进行过滤。(这个需要按照对方内容里面具体含有什么代码来具体操作)
    一般的只有链接,使用二中的代码进行过滤就可以了,但是实际上一般的网站现在都在内容里面加有广告等,所以采取下面的过滤正则就可以完成过滤:

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


    应用示例四:过滤GG广告代码
    其实这个就是在上面的内容过滤,但是很多论坛里的网友经常问这个,所以单独作为一个应用列出来:

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

    DEDECMS 过滤规则 去掉超链接 保留文字图片
    {dede:trim}<(|/)a([^>]*)>{/dede:trim}

    10.的时候主动摘要是摘取采集网页代码中 <meta name="description" content="内容" />
    的“内容”,所以你设置>10是不行的,如果有些摘要<10怎么办,你设置条件“如果为空值”,但是一般不会是空值,只有采集前就设置条件,逼迫他取空值,然后再设置。

    现在知道的就只有2个方法:

    1.采集完后履行SQL :update dede_archives set description="" 清空摘要再应用“主动摘要”功效

    2.修正采集页面“摘要过滤内容”的默认值为{dede:trim replace=""}(.*){/dede:trim}
    甘样样每天采集新的文章的时候就主动将摘要取了空值。再应用“主动摘要”功效,不用每采集一次就履行SQL

    11.批量采集文章如何调换文章标题/描写/文章中的要害字

    比如:
    美元兑日元:亚洲市场可能吸收能力亚洲股市上班扬支撑
    采集后可以变成
    USD/JPY:亚洲市场可能吸收能力亚洲股市上班扬支撑
    {dede:trim replace="USD/JPY"}美元兑日元{/dede:trim}

    
    Copyright © 2003-2016
    时间:9:00-21:00 (节假日不休)
    版权所有:巨人网络(扬州)科技有限公司
    总部地址:江苏省信息产业基地11号楼四层
    《增值电信业务经营许可证》 苏B2-20120278
    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信

    微信号已复制,请打开微信添加咨询详情!