三步教你实现织梦批量管理文章的标签功能

来源:爱站网时间:2020-07-14编辑:网友分享
我们都知道我们的后台管理的系统多种多样,而织梦也是我们常用的系统之一,而每个系统都有自己的不足之处,今天爱站技术频道小编为大家带来的是三步教你实现织梦批量管理文章的标签功能。

我们都知道我们的后台管理的系统多种多样,而织梦也是我们常用的系统之一,而每个系统都有自己的不足之处,今天爱站技术频道小编为大家带来的是三步教你实现织梦批量管理文章的标签功能。

思考: 织梦原本的文章批量管理中有这么几项,看图:

根据这个自动关键词、批量增加属性、批量删除属性这个思路来进行批量tag标签操作。

修改后的具体效果如下: 

具体实现步骤:三步

1、打开dede/templets/content_list.htm,找到:

  1. a href="javascript:;" onClick="cAtts('attsDel',event,this)" class="coolbg"> 删除属性 a>
在他后边添加:
  1. a class="coolbg" onclick="EditArcs('tagsEdit',event,this)" href="javascript:;"> 修改tags标签 a>

 

2、打开dede/js/list.js,在文件最后边添加:

  1. /*批量修改文档*/
  2. function EditArcs(jname,e,obj){
  3. var qstr=getCheckboxItem();
  4. if(qstr=='')
  5. {
  6. alert('必需选择一个或多个文档!');
  7. return;
  8. }
  9. LoadQuickDiv(e, 'archives_do.php?dopost=batchEditArchives&qstr='+qstr+'&dojob='+jname+'&rnd='+Math.random(), 'tagsEditDlg', '450px', '160px');
  10. ChangeFullDiv('show');
  11. }

 

3.打开dede/archives_do.php,这个文件的最后四行是:

  1. php
  2. //AJAX窗体结束
  3. }
  4. ?>

 

替换成:

  1. php
  2. //AJAX 窗体结束
  3. }
  4. /*
  5. * --------------------------------------------
  6. * function batchEditArchives(){}
  7. * 批量修改文档
  8. * --------------------------------------------
  9. * */
  10. else if ($dopost == 'batchEditArchives')
  11. {
  12. if( !empty($aid) && empty($qstr) )
  13. {
  14. $qstr = $aid;
  15. }
  16. $dojobname = '修改TAG标签';
  17. AjaxHead();
  18. //输出AJAX可移动窗体
  19. $divname = 'tagsEditDlg';
  20. echo "
    \r\n";
  21. echo "
    {$dojobname}
    \r\n";
  22. echo "
    封锁
    \r\n";
  23. echo "

\r\n";

  • echo "
    \r\n"
    ;
  • echo "\r\n";
  • echo "\r\n";
  • echo "\r\n";
    • ?>
    • tr height='28'>
    • td width="80" class='bline'> 标 签:td>
    • td class='bline'>
    • input type='text' name='tags' id="tags" value='' />(','号分隔,单个标签小于12字节)
    • /td>
    • tr>
    • tr height='32'>
    • td width="80" class='bline'> 文档IDtd>
    • td class='bline'>
    • input type='text' name='tmpids' value="" style='width:310px;overflow:hidden;' />
    • /td>
    • tr>
    • tr height='32'>
    • td colspan='2' align='center' style='padding-top:12px'>
    • input name="imageField" type="image" src="images/button_ok.gif" width="60" height="22" class="np" border="0" style="cursor:pointer" />
    •   
    • img src="images/button_back.gif" width="60" height="22" border="0" onclick='HideObj("");ChangeFullDiv("hide");' style="cursor:pointer" />
    • /td>
    • td>
    • /tr>
    • table>
    • /form>
    • //AJAX 窗体结束
    • }
    • //修改标签结束
    • /*
    • * ------------------------------
    • * 修改标签详细操作
    • * function tagsEdit(){}
    • * ------------------------------
    • *
    • * */
    • elseif ($dopost == 'tagsEdit'){
    • //CheckPurview('a_Commend,sys_ArcBatch');
    • if( !empty($aid) && empty($qstr) )
    • {
    • $qstr = $aid;
    • }
    • if($qstr=='')
    • {
    • ShowMsg("参数无效!", $ENV_GOBACK_URL);
    • exit();
    • }
    •  
    • if(empty($tags))
    • {
    • ShowMsg("必需输入tags标签!", $ENV_GOBACK_URL);
    • exit();
    • }
    • $tags = str_replace(',', ',', $tags);
    • $tagss = explode(',',$tags);
    • if(empty($tagss)){
    • ShowMsg("必需输入tags标签!", $ENV_GOBACK_URL);
    • exit();
    • }
    •  
    • $arcids = ereg_replace('[^0-9,]','',ereg_replace('`', ',', $qstr));
    • $arcids_arr = explode(',', $arcids);
    • if (empty($arcids_arr)) {
    • ShowMsg("参数无效!", $ENV_GOBACK_URL);
    • exit();
    • }
    •  
    • foreach($arcids_arr as $id){
    • /*
    • * 处理修改后的Tag
    • */
    • $oldtag = GetTags($id);
    • $oldtags = explode(',',$oldtag);
    • foreach($tagss as $tag)
    • {
    • $tag = trim($tag);
    • if(isset($tag[255]) || $tag!=stripslashes($tag))
    • {
    • continue;
    • }
    • if(!in_array($tag,$oldtags))
    • {
    • InsertOneTag($tag,$id);
    • }
    • }
    • foreach($oldtags as $tag)
    • {
    • if(!in_array($tag,$tagss))
    • {
    • $dsql->ExecuteNoneQuery("Delete From `js_taglist` where aid='$id' And tag like '$tag' ");
    • $dsql->ExecuteNoneQuery("Update `js_tagindex` set total=total-1 where tag like '$tag' ");
    • }
    • else
    • {
    • $dsql->ExecuteNoneQuery("Update `js_taglist` set `arcrank` = '$arcrank', `typeid` = '$typeid' where tag like '$tag' ");
    • }
    • }
    • }
    • ShowMsg("成功修改选中文档的tags标签!", $ENV_GOBACK_URL);
    • exit();
    •  
    • }

    本文是爱站技术频道小编为大家带来的三步教你实现织梦批量管理文章的标签功能,相信阅读完本文的朋友了解的差不多了,这个功能的开发对后期的管理者带来了工作的便捷。

上一篇:织梦dedecms实现点击下拉加载的操作步骤

下一篇:织梦dedecms系统中如何根据个别字段值显示顺序

您可能感兴趣的文章

相关阅读

查看更多 >