100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 织梦DedeCMS 在后台添加栏目文档的批量复制功能

织梦DedeCMS 在后台添加栏目文档的批量复制功能

时间:2019-11-30 10:34:32

相关推荐

织梦DedeCMS 在后台添加栏目文档的批量复制功能

如果想要把一个栏目的所有文档复制到另一个栏目中如果没有好的办法就只能一个一个的重新建立,为了避免这种浪费时间的事,就在后台写一个批量复制的功能。下面是实现功能的具体步骤

修改文件dede/templets/content_batch_up.htm

修改头部脚本函数ShowHideMove()

function ShowHideMove()

{

var selBox = document.getElementByIdx_x(‘moveradio’);

var selBox2 = document.getElementByIdx_x(‘copyradio’);//edited by adan;090508

var obj = document.getElementByIdx_x(‘moveField’);

if(selBox.checked||selBox2.checked) obj.style.display = “block”;//edited by adan;090508

elseobj.style.display = “none”;

}

添加复制栏目按钮

查找

移动文档

后面添加

复制栏目文档

修改文件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″);

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。