魔扣论坛

魔扣源码论坛业务
查看: 538|回复: 2

[织梦教程] dedecms织梦系统常用问题处理方法收集

[复制链接]
  • TA的每日心情
    难过
    22 小时前
  • 签到天数: 2929 天

    [LV.Master]开坛老将

    7万

    主题

    227

    回帖

    27万

    积分

    管理员

    Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

    魔扣币
    745005
    贡献
    157749
    威望
    32799

    最佳新人活跃会员热心会员推广达人宣传达人突出贡献优秀版主荣誉管理论坛元老

    发表于 2020-5-29 01:18:34 | 显示全部楼层 |阅读模式
    魔扣币兑换比例:【 50以下 : ¥1 = 10 魔扣币 】丨【 50 - 100 :¥1 = 20 魔扣币】丨【 100以上:¥1 = 30 魔扣币 】

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x
    1、织梦dedecms系统安装在子目录下,会员信息链接不对的解决法。
       在网上搜索了很多方法,都得不到解决,其中一个解决方法是:到标签模板里找到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}

    会员购买:>> 点击购买 << | 魔扣币购买:>> 点击购买 <<
    承接业务:服务器代维丨网站托管丨SEO
    联系客服:微信:morko-net | QQ:1367681973

    该用户从未签到

    2

    主题

    271

    回帖

    544

    积分

    高级魔扣

    Rank: 4

    魔扣币
    271
    贡献
    271
    威望
    0
    发表于 2020-5-29 09:48:12 来自手机 | 显示全部楼层
    世界上有两个我,一个假装快乐,一个真心难过。',

    该用户从未签到

    2

    主题

    258

    回帖

    520

    积分

    高级魔扣

    Rank: 4

    魔扣币
    260
    贡献
    260
    威望
    0
    发表于 2020-8-31 09:00:25 | 显示全部楼层
    人生就是一首歌,要懂得这首歌的音符,才会唱好这首歌,所以,要学习。人生就一个旋转的陀螺,只有不停的旋转,才会专一,所以,要努力。在前进的路上,要相信前面的风景更美好,丢失了什么不必在意,所以,魔扣源码论坛要乐观,任何时候都要乐观。这样,人生走的才不会累,才有意义。
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    • 联系我们
    • 新浪微博 :
    • 在线客服 :魔扣科技 
    • 源码QQ群 :魔扣源码论坛官方总群
    • 联系邮箱 :charlin#morko.net
    • 微信扫一扫
    快速回复 返回顶部 返回列表