DEDE 在后台管理加上频道文本文档的大批量拷贝作

2021-03-28 02:37| 发布者: | 查看: |

假如要想把一个频道的全部文本文档拷贝到另外一个频道中假如沒有好的方法就只有一个一个的再次创建,以便防止这类消耗時间的事,大家就在后台管理写一个大批量拷贝的作用。下边是完成作用...
假如要想把一个频道的全部文本文档拷贝到另外一个频道中假如沒有好的方法就只有一个一个的再次创建,以便防止这类消耗時间的事,大家就在后台管理写一个大批量拷贝的作用。下边是完成作用的实际流程
改动文档dede/

改动头顶部脚本制作涵数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
 else obj.style.display = none
 }

加上拷贝频道按键

搜索

input name= action type= radio >  移动文本文档

后边加上

  input name= action type= radio >  拷贝频道文本文档

改动文档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段编码搞反复了,先汗一个!

随后在***后加上下边编码

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-

 $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. /
 //转化成文本文档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();
}

<
>

 
QQ在线咨询
售前咨询热线
18720358503
售后服务热线
18720358503
返回顶部