dedecms后台删除不了文章,文章删除之后,提示成功,但是实际未删除_dedecms

前些日子给一朋友用dedecms套用了一个站点,因为都是用的模板,套起来非常快,三两小时就搞定,搞完之后马上交稿。好景不长,没过多久,这朋友找上门来说:dedecms后台删除不了文章,文章删除之后,提示成功,但是实际后台未删除。

后来我给检查了一番,因为对dedecms这种cms,一些问题基本都是站长摸透了的,这类问题应该可以说是家常便饭吧。于是baidu,google了一下,寥寥无几的答案,大都是无关紧要的答案,亦或是答非所问,也许都是抱着灌水的态度把,却而止步。

决定对程序进行排查了,得得看看删除程序是怎么进行的吧,查了几个php页面:archives_do.php

QQ图片20160708151305

发现这里用了的函数  DelArc

然后继续往下找到这个函数,函数来自inc_batchup.php文件

QQ截图20160708151534

 

看到这里就基本一目了然了,将sql进行执行查询出来,发现这里表里面的数据让人大吃一惊。

将表中的数据进行校对处理,最终得以解决了。

万恶的dedecms,害我找了一晚上的Bug,居然是它惹的祸啊…

客户的一个老站点,最近客户反馈说怎么前台内容页都访问不了呢……

咨询了一下客户前后操作,客户只说重新生成了下后台,没做其它操作,我说这不可能导致内容页访问不了吧,紧接着开始找bug了……

T$R834[F8ISK(P)VOU~Y}9C

 

奇怪的问题在于:所有信息详情页的标题,时间,作者等都不见了,不管是动态还是静态都不显示。

尽然都不显示,并且有些都直接404页面,那就看看生成了什么诡异文件呢,ssh 进入服务器看了看,发现都生成了1970的文件夹,这都是时间文件夹,为什么时间会变成1970呢,百度,谷歌了一下,发现都是什么1970时间是因采集导致的问题,其它的问题就一概不知,也没见人提,这真是“邪乎”了。

0[[S)JLZ]%{Y_@MOKZLE@5J

不管如何修改后台进行生成,都无济于事,都还是生成1970的文件夹

很是纳闷。。。

翻了下代码:

4WQQ_A5SO[$IM8JZ10KJ$`H

一步步的查询,一步步的打断点,整整找了几个小时。。。

就在焦头烂额的时候,心想这下无解了吗,不可能

继续扫描代码,终于发现了,原来是在数据缓存上出了问题啊,缓存表上保存的栏目路径和实际栏目路径完全不是一回事,dedecms在配置文件缓存上需要有足够的权限才能访问,调整了权限后,对缓存表和实际栏目表对应起来,最终解决问题。

DEDECMS织梦 真正的随机文章的调用方法

关于dedecms随机文章是老生常谈了,原本很简单的一问题,现在还是捡起来说说,供大家借鉴一下吧

大家都知道随机标签 rand,调用标签也知道怎么写:

{dede:arclist row=’1000′ pagesize=’10’ titlelen=’35’ orderby=’rand’}

[field:textlink/]

{/dede:arclist}

但是仅仅有这个,在静态页面上是不能达到真正意义上的随机的,下面就是如何设置了:

将你需要随机生成的那段代码(上面调用标签)加入到新建自定义宏中,然后使用JS调用,将JS代码插入到模板中
如下:
<script src=’/plus/mytag_js.php?aid=12&nocache=1′ language=’javascript’></script>
通过后台的JS调用生成的JS代码是没有nocache=1

为了能兼容多个版本,建议nocache=1还是加上为好,这样直接在前台需要的地方复制上面的这个js代码即可调用随机代码了。