给您的dedecms5.3添加复制栏目功能
来源:asp之家 发布时间:2009-05-12 10:56:00
修改文件dede/templets/content_batch_up.htm
修改头部脚本函数ShowHideMove()
function ShowHideMove()
{
var selBox = document.getElementById('moveradio');
var selBox2 = document.getElementById('copyradio');//edited by adan;090508
var obj = document.getElementById('moveField');
if(selBox.checked||selBox2.checked) obj.style.display = "block";//edited by adan;090508
else obj.style.display = "none";
}
添加复制栏目按钮
查找
<input name="action" type="radio" class="np" value="move" id="moveradio" onClick="ShowHideMove()" />
移动文档
后面添加
<input name="action" type="radio" class="np" value="copy" id="copyradio" onClick="ShowHideMove()" /><!--added by adan;090508-->
复制栏目文档
修改文件dede/content_batch_action.php
首先删除文件最后的两段代码
//删除空标题内容
else if($action=='delnulltitle')
{
$dsql->SetQuery("Select id From dede_archives where trim(title)='' ");
$dsql->Execute('x');
$tdd = 0;
while($row = $dsql->GetObject('x'))
{
if(DelArc($row->id))
{
$tdd++;
}
}
ShowMsg("成功删除 $tdd 条记录!","javascript:;");
exit();
}
//修正缩略图错误
else if($action=='modddpic')
{
$dsql->ExecuteNoneQuery("Update dede_archives set litpic='' where trim(litpic)='litpic' ");
ShowMsg("成功修正缩略图错误!","javascript:;");
exit();
}
上面2段代码,官方人员竟然把上面2段代码搞重复了,先汗一个!
然后在最后添加下面代码
//start 添加复制栏目文章功能 added by adan;090508
else if($action=='copy')
{
if(empty($typeid))
{
ShowMsg('该操作必须指定栏目!','javascript:;');
exit();
}
$typeold = $dsql->GetOne("Select * From `dede_arctype` where id='$typeid'; ");
$typenew = $dsql->GetOne("Select * From `dede_arctype` where id='$newtypeid'; ");
if(!is_array($typenew))
{
$dsql->Close();
ShowMsg("无法检测复制到的新栏目的信息,不能完成操作!","javascript:;");
exit();
}
if($typenew['ispart']!=0)
{
$dsql->Close();
ShowMsg("你不能把数据复制到非最终列表的栏目!","javascript:;");
exit();
}
if($typenew['channeltype']!=$typeold['channeltype'])
{
$dsql->Close();
ShowMsg("不能把数据复制到内容类型不同的栏目!","javascript:;");
exit();
}
$gwhere .= " And channel='".$typenew['channeltype']."' And title like '%$keyword%'";
$ch = $dsql->GetOne("Select addtable From `dede_channeltype` where id={$typenew['channeltype']} ");
$addtable = $ch['addtable'];
$dsql->SetQuery("Select * From `dede_archives` where typeid='$typeid'");
$dsql->Execute('c');
$tdd = 0;
while($row = $dsql->GetObject('c'))
{
$senddate = time();
$sortrank = AddDay($senddate,0);//第二个参数是排序值,参考article_add.php
$ID = $row->id;
$typeid = $newtypeid;//$newtypeid
$sortrank = $row->sortrank;
$flag = $row->flag;
$ismake = $row->ismake;
$channelid = $row->channel;
$arcrank = $row->arcrank;
$click = $row->click;
$money = $row->money;
$title = addslashes($row->title);//需要添加addslashes()转换; adan;090508
$shorttitle = $row->shorttitle;
$color = $row->color;
$writer = $row->writer;
$source = $row->source;
$litpic = $row->litpic;
$pubdate = $row->pubdate;
$adminid = $cuserLogin->getUserID();
$notpost = $row->notpost;
$description = addslashes($row->description);//需要添加addslashes()转换; adan;090508
$keywords = $row->keywords;
require_once(DEDEADMIN."/inc/inc_archives_functions.php");
//生成文档ID
$arcID = GetIndexKey($arcrank,$typeid,$sortrank,$channelid,$senddate,$adminid);
if(empty($arcID))
{
ShowMsg("无法获得主键,因此无法进行后续操作!","-1");
exit();
}
//加入数据表dede_archives的SQL语句
//----------------------------------
$inQuery = "INSERT INTO `dede_archives`(id,typeid,typeid2,sortrank,flag,ismake,channel,arcrank,click,money,title,shorttitle,
color,writer,source,litpic,pubdate,senddate,mid,lastpost,scores,goodpost,badpost,notpost,description,keywords,filename)
VALUES ('$arcID','$typeid','','$sortrank','$flag','$ismake','$channelid','$arcrank','0','$money',
'$title','$shorttitle','$color','$writer','$source','$litpic','$pubdate','$senddate',
'$adminid','0','0','0','0','0','$description','$keywords','');";
if(!$dsql->ExecuteNoneQuery($inQuery))
{
$gerr = $dsql->GetError();
$dsql->ExecuteNoneQuery("Delete From `dede_arctiny` where id='$arcID'");
ShowMsg("把数据保存到数据库主表 `dede_archives` 时出错,请把相关信息提交给DedeCms官方。".str_replace('"','',$gerr),"javascript:;");
exit();
}
//保存到附加表
$cts = $dsql->GetOne("Select addtable From `dede_channeltype` where id='$channelid' ");
$addtable = trim($cts['addtable']);
if(empty($addtable))
{
$dsql->ExecuteNoneQuery("Delete From `dede_archives` where id='$arcID'");
$dsql->ExecuteNoneQuery("Delete From `dede_arctiny` where id='$arcID'");
ShowMsg("没找到当前模型[{$channelid}]的主表信息,无法完成操作!。","javascript:;");
exit();
}
$useip = GetIP();
$redirecturl = $addRow['redirecturl'];
$templet = $addRow['templet'];
$addRow = $dsql->GetOne("Select * from `{$addtable}` where aid='$ID'");
$body = addslashes($addRow["body"]);
$query = "INSERT INTO `{$addtable}`(aid,typeid,redirecturl,templet,userip,body) Values('$arcID','$typeid','$redirecturl','$templet','$useip','$body')";
if(!$dsql->ExecuteNoneQuery($query))
{
$gerr = $dsql->GetError();
$dsql->ExecuteNoneQuery("Delete From `dede_archives` where id='$arcID'");
$dsql->ExecuteNoneQuery("Delete From `dede_arctiny` where id='$arcID'");
ShowMsg("把数据保存到数据库附加表 `{$addtable}` 时出错,请把相关信息提交给DedeCms官方。".str_replace('"','',$gerr),"javascript:;");
exit();
}
else $tdd++;
}
if($tdd>0)
{
$jumpurl = "makehtml_archives_action.php?endid=$endid&startid=$startid";
$jumpurl .= "&typeid=$newtypeid&pagesize=20&seltime=$seltime";
$jumpurl .= "&stime=".urlencode($starttime)."&etime=".urlencode($endtime);
ShowMsg("成功复制了 $tdd 条记录,准备重新生成HTML...",$jumpurl);
}
else ShowMsg("完成操作,没复制任何数据...","javascript:;");
exit();
}
//end ;090508
保存完毕,对应位置上传后,就可以在文档批量维护里使用此功能了
猜你喜欢
- 搜索引擎会对恶意进行SEO的网站进行惩罚,如清除所有链接。百度对作弊的判断条件:(1)在网页源代码的任意位置,故意加入与网页内容不相关的关键
- 打算做个下半场营销软件下载站。放上去谷歌广告adsense后,发现杂得也不给我显示。后来找到了原因,我的站应该是属于谷歌官方所说的“版权材料
- 李开复更忙了。9月26日凌晨1点到重庆,上午拜访重庆市官员,下午接受本报记者专访,同日深夜则奔赴上海—&mdas
- 利用强大的技术,可以把基于wordpress的网站做成各种各样的形式,这除了要求wordpress主题开发人员精通html,PHP,JS,C
- 对于每一个站长而言,最关键的某过于搜索引擎能够正常收录,一旦网站不能正常收录一切都是痴心妄想。为什么会出现收录困难?这是因为搜索引擎机器人是
- 内部因素(15条)1、URL中出现关键词2、网页Title中出现关键词3、常规内容中出现关键词4、在页面的第一段中出现关键词5、在页面的最后
- 非主流闪图一直是“美图秀秀[点击下载]”软件的重点功能之一,操作简单,动感十足,深受非主流一族的喜爱
- 有Godaddy主机用户不知道该怎样从Password Vault 里删除密码,其实很简单的,操作如下:首先. 登陆你的Account Ma
- 成功的网站意味着您的企业能够从互联网上获得更多客户,迅速扩大企业知名度,创造更多生意机会。如果您依旧认为网站就是放在互联网上的产品手册,那它
- 昨晚,Google公司全球副总裁兼中国区总裁李开复博士来到广东外语外贸大学,与在校大学生畅谈求学与人生规划。他从10年来中国大学生向他提的4
- 网赚,诈骗是避不开的一个话题。如果你是一个新手,骗子网站对你可能就是一场灾难!不仅N久的努力白忙活了,对新手的信心也是一个很大的打击。那么,
- (本文以Windows主机为例进行讲解)首先登录Godaddy,方法参考:Godaddy账户登录及基本功能图解登录以后在我的产品中点击主机账
- 一、网站被将权的表现1。 被搜索引擎收录你的网站速度变慢,通常表现在快照更新时间,这点cnzhanzhang的快照就停留在7月份。2。你的网
- 域控制器是公司网络管理的核心,它出现故障往往会导致全网用户计算机的登录失败。不过,大家在建立域控制器时往往忽视了对DNS的设置,致使域中的D
- 打开:mode/o/template/m_article.htm查找:<td colspan="3"&g
- 在用TCP/IP协议族架设的网络中,每一个节点都有一个唯一的IP地址,用来作为它们唯一的标志。然而,如果让使用者来记住这些毫无记忆规律的IP
- 五、个性化“任务栏”和“开始”菜单在图6所示窗口的右侧,显示了“任务栏”和“开始”菜单的有关组策略配置项目。下面我们来看具体的实例: 图 6
- 什么是SNS?SNS,全称Social Networking Services,即社会性网络服务,专指旨在帮助人们建立社会性网络的互联网应用
- 昨天特意去机房安装64位系统,带了一个250G新硬盘去。为了减少断网的时间,首先把硬盘分好区,把许多数据也拷到一个分区里。我用的是windo
- 从上到下修改typecho模版,我用的这个模版发现Title定义不是很好。在“Discuz论坛首页和内容页的Title分别定义”一文中,我写