dedecms删除文章的同时删除图片附件方法

下面这个技巧就是为了实现这个功能,但是不保证100%有效:

首先,在"/include"目录下建立"extend.func.php"文件. 然后,将以下内容保存在"extend.func.php"文件中,一共三个函数

接下来打开"/dede/inc/inc_batchup.php"文件。

1:在33行下方加入,也就是

 代码如下 复制代码
"$arcRow = $dsql->GetOne($arcQuery);"

下方:

 代码如下 复制代码

$arcBodyRow = GetArcBody($aid);

2:在138行下方加入,也就是"return true;"上方:

其它方法参考

打开dede/inc/inc_batchup.php

找到”//删除数据库的内容”
在这前面加上

 代码如下 复制代码

//删除缩略图
if($arcRow['litpic']!=”"){
$dsql->ExecuteNoneQuery(“Delete From #@__uploads where url=’$arcRow[litpic]‘”);
$truedir = GetTruePath($arcRow['siterefer'],$arcRow['sitepath']);
$litpicfile = $truedir.$arcRow['litpic'];
@unlink($litpicfile);
}
//删除大图
$arcbodyQuery = “Select * from “.$arcRow['addtable'].” where aid=’$aid’”;
$arcbodyRow = $dsql->GetOne($arcbodyQuery);
$imgsrcarray=GetImageSrc($arcbodyRow['body']);
foreach ($imgsrcarray as $v) {
if((trim($v)!=”")&&(!eregi(“^http://”,$v))){
$dsql->ExecuteNoneQuery(“Delete From #@__uploads where url=’$v’”);
$picfile = $truedir.$v;
@unlink($picfile);
}
}

//删除数据库的内容

第二处:
找到

 代码如下 复制代码
Select #@__archives.ID,#@__archives.title,#@__archives.typeid
改为:
Select #@__archives.ID,#@__archives.title,#@__archives.typeid,#@__archives.litpic

第三处:
在文件最后加上一函数

 代码如下 复制代码

//获得内容中的图像地址

function GetImageSrc($body){
if( !isset($body)) return ”;
else{
preg_match_all (“/<(img|IMG)(.*)(src|SRC)=["|'|]{0,}([h|/].*(jpg|JPG|gif|GIF))["|'|s]{0,}/isU”,$body,$out);
return $out[4];
}
}

时间: 2024-10-17 18:44:53

dedecms删除文章的同时删除图片附件方法的相关文章

[MVC]如何删除文章内容中的图片

1.实现代码 if (!string.IsNullOrWhiteSpace(entity.Content)) { var immgList = TextHelper.GetImgUrlList(entity.Content); var mainUrl = (Request.Url.ToString()).Replace(Request.RawUrl, ""); foreach (var item in immgList) { var filepath = item.Replace(ma

jquery 实现删除文章提示是否删除

 为了更好的用户体验,当用户在删除文章的时候给出一个提醒的功能,提示他是否删除这篇文章.具体实现代码如下: html代码: <a link="{:U('Athlete/del/',array('uid'=>$vo['id']))}" href="javascript:void(0)" name="{$vo.name}" class="del">删除 </a> jquery代码: <scrip

PHP删除文章时同时删除生成的HTML页面

添加文章时生成HTML静态的页面,但如果要删除文章,添加文章时生成的HTML静态页面也应该同时删除掉,否则就成了冗余文件,所以我们应该在删 除没用的文章时,同时删除掉已生成的HTML静态页面,下面来看看PHP文章系统里面如何同时删除掉生成的HTML静态页面,这里只是一个简单的原理系 统,可以作为一个参考,更成熟系统可以参考比较成熟的CMS系统,下面是源码文件. ob_start(); require_once("../inc/conn.php"); $id=$_GET["id

dedecms友情链接显示成LOGO图片的方法

对于dedecms友情链接首页不显示LOGO图片方法如下: 进入后台--系统设置---默认模板管理,找到主页模块index.htm,点修改, 把下面代码: <strong>友情链接</strong> <span class="more"> <a href="plus/flink.php">所有链接</a> | <a href="plus/flink_add.php">申请加入

通过DEDECMS后台的SQL指定条件删除文章

第一点: 织梦DEDECMS的文章是分别存储在三个表里面[addonarticle],[archives],[arctiny]通过addonarticle.aid.archives.id.arctiny.id关联,删除文章时,应该删除三个表里的记录. 第二点: 执行SQL可以从PHPMYADMIN,或者DEDECMS后台系统设置-SQL命令行工具里 第三点: 本次手动删除内容为空或者字数少于200的文章,分了两步分别删除两个表,总结代码如下: 1: 查看要删除文章的代码:  代码如下 复制代码

PHP判断文章里是否有图片的简单方法

  这篇文章主要介绍了PHP判断文章里是否有图片的方法,很实用的功能,需要的朋友可以参考下 本文的PHP程序用来判断文章里是否包含有图片,其主要实现思路就是用preg_match来检查内容里是否有匹配的" 废话少说,下面是主要实现代码: $url="http://XXXXX/article/012.html"; $content=file_get_contents($url); //读取文章页面源代码 if(preg_match("/ echo "检测到图

修改几个文件后,Dedecms 5.3版(GB)的在删除文件同时可删除图片等附件

经过多日测试,修改几个文件后,5.3版(GB)的在删除文件同时可删除图片等附件.具体测试了专题.文章类.图集类.这几个类别的 另外几个类别只测试了一次分类信息但没有成功. (期待高人能解决分类信息在删除文章的同时可将自带的图片等附件全删除.先谢谢了.)注明:我的站没上线,仅是本机测试. 其他类别的都没做测试.需要修改的文件为: include文件夹中的inc中的inc_fun_funAdmin.php     inc_fun_funString.php   inc_stat.php 将下面代码替

dedecms 删除文章同时删除缩率图以及文章图片

dedecms 删除文章同时删除缩率图以及文章图片 测试5.6版本 我用的是gbk 方法: 这里我还是把完整的代码放出来 省的大家看不懂,遭到大家的火炮攻击 呵呵 我贴代码之前 大家一定要记着一定要按照我说的走,没有按照我说的走的,出问题,别骂我,我先声明,如果按照我说的走,出问题了,你随便骂我,我不还口,不废话了 贴代码 首先,在"/include"目录下打开"extend.func.php教程"文件. 然后,将以下内容保存在"extend.func.p

DEDE删除文章同时删除附件解决代码

DEDE删除文章同时删除附件解决代码 /* 根据文档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=