dedecms怎么删除文章同时也删除附件

来源:undefined 2025-01-01 08:00:05 1003

dedecms怎么删除文章同时也删除附件?

dedecms删除文章同时也删除附件的修改方法

dedecms删除文章同时也删除附件的修改方法,使用dedecms的朋友可以参考下。

  推荐学习:织梦cms

首先添加两个函数 

代码如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

/* 

根据文档id获取文档的body部分 

*/ 

function getArcBody($arcid) 

global $dsql; 

if(empty($arcid)) return ; 

$body = ; 

$query = "select arc.*,ch.addtable,ch.fieldset from `dede_arctiny` as arc left join `dede_channeltype` as ch on arc.channel=ch.id where arc.id=$arcid"; 

$row = $dsql->GetOne($query); 

if(empty($row)) return ; 

$addtable = $row[addtable]; 

$fieldset = $row[fieldset]; 

include_once(DEDEINC../dedetag.class.php); 

$dtp = new DedeTagParse(); 

$dtp->SetNameSpace(field,); 

$dtp->LoadSource($fieldset); 

if(is_array($dtp->CTags)) 

foreach($dtp->CTags as $tid=>$tag) 

if($tag->GetAtt(type)==htmltext) 

$body = $tag->GetName(); 

break; 

if(!empty($body)) 

$query = "select $body from `$addtable` where aid=$arcid"; 

$row = $dsql->GetOne($query); 

$body = $row[$body]; 

return $body; 

return ; 

/* 

解析文档内容的本地图片图片 

*/ 

function get_img_from_body($body) 

$result = array(); 

if(empty($body)) 

return $result; 

preg_match_all(/ssrc=(["|])([^]*?).(gif|jpg|jpeg|png)/,$body,$res); 

if(!empty($res[2])) 

foreach($res[2] as $k=>$v) 

$result[] = $v...$res[3][$k]; 

return $result; 

}

登录后复制

把这段代码贴到include/common.func.php后面, 

接着打开后台(假设使用默认的dede作为后台)dede/inc/inc_batchup.php文件, 

在第22行添加代码如下: 

1

$body = getArcBody($aid);

登录后复制

接在在第139行,就是在 

1

return true;

登录后复制

上面一行加上下面的代码 

1

2

3

4

5

6

7

8

9

10

11

12

13

if($body) 

$img_arr = get_img_from_body($body); 

if(!empty($img_arr)) 

foreach($img_arr as $v) 

$img_file = GetTruePath().str_replace($GLOBALS[cfg_basehost],,$v); 

if(file_exists($img_file) && !is_dir($img_file)) 

@unlink($img_file); 

}

登录后复制

这样就可以实现删除文档的时候删除字段为“htmltext”类型的中的本地图片了。 

以上就是dedecms怎么删除文章同时也删除附件的详细内容,更多请关注php中文网其它相关文章!

最新文章