您现在的位置是:首页 > cms教程 > DedeCMS教程DedeCMS教程

dedecms添加文章时避免发布重复文章的方法

如霜2023-09-24DedeCMS教程已有人查阅

导读用dedecms做文章类网站,一直有个让人头痛的问题:就是添加文章很容易添加到重复的,也就是之前添加过了,等过了一段时间又添加一篇,加文章大多数是从不同的网站复制添加的

用dedecms做文章类网站,一直有个让人头痛的问题:就是添加文章很容易添加到重复的,也就是之前添加过了,等过了一段时间又添加一篇,加文章大多数是从不同的网站复制添加的,所以很容易所到这个问题,就拿代码号来说近200个栏目、几万的文章数据,添加重复的机率更大了,为角解决dedecms添加文章时重复内容,于是就有了以下内容
不得不说下dedecms自带的检测标题是否重复基本上毫无用处,“提示:系统已经存在标题为 'xxx' 的文档”,该提示只会在标题文本百%匹配的情况下才会出现,现在收集的文章多数都是内容相同标题却是伪原创了的,所以说根本匹配不了,下面就介绍下代码号实现的方法吧,不算很好将就能用
第一步:加载jQuery文件打开/dede/article_add.htm在<head>后面添加jQuery库
<scripttype="text/javascript"src="/images/js/j.js"></script>
这个jQuery库是1.2的,很老的版本了,你可以直接去官网下载较新的版本
第二步:添加一些div和js在第二个</form>的前面添加
<spanid="checkArcRepeatedTips"></span>
<divstyle="margin:10px;"><labelfor="checkArcRepeated"><inputtype="checkbox"id="checkArcRepeated"checked="checked"/>检测内容是否有重复</label></div>
<inputname="imageField"id="imageFieldBtn"type="image"src="images/button_save.gif"width="60"height="22"class="np"border="0"style="cursor:pointer;display:none;"/>
<inputtype="button"value="保存"id="checkArcRepeatedBtn"style="width:150px;height:;line-height:30px;background:green;font-size:14px;font-weight:bold;color:#fff;padding:10px;cursor:pointer;"/>
<scripttype="text/javascript">
$(function(){
            $('#checkArcRepeatedBtn').click(function(){
                if($('#title').val()==''){
                    alert('标题不能为空');
                    returnfalse;
                }
                if($('#typeid').val()==''||$('#typeid').val()==0){
                    alert('请选择栏目');
                    returnfalse;
                }
                if($('#checkArcRepeated').attr('checked')!=''){
                    varrange=ue.selection.getRange();
                    range.select();
                    varcheckWord=ue.selection.getText();
                    if(!checkWord){
                        alert('请随机选择一段文本进行文章重复检测');
                        isRepeat=true;
                        returnfalse;
                    }else{
                        $.ajax({
                            type:'get',
                            url:'checkArcRepeated.php?checkWord='+checkWord,
                            async:false,
                            beforeSend:function(){
                                $('#checkArcRepeatedTips').text('请稍候...');
                            },
                            success:function(data){
                                if(data=='ok'){
                                    //ue.execCommand("insertHtml",checkWord+qmtx3Node)
                                    $('#checkArcRepeated').removeAttr('checked');
                                    $('#checkArcRepeatedTips').html(w);
                                    //$('#imageFieldBtn').trigger('click');
                                    isRepeat=false;
                                }else{
                                    isRepeat=true;
                                    $('#checkArcRepeatedTips').html(data);
                                }
                                
                            }
                        });
                    }
                    if(isRepeat==false){
                        $('#imageFieldBtn').trigger('click')
                    }
                    returnfalse;
                }else{
                    $('#imageFieldBtn').trigger('click');
                }
            });
    
});
</script>
第三步:删除多于的代码
删除
<inputname="imageField"type="image"src="images/button_save.gif"width="60"height="22"class="np"border="0"style="cursor:pointer;"/>
Tips:有以上代码有两处
删除
if(document.form1.title.value=='')
{
  alert('文章标题不能为空!');
  returnfalse;
}
if(document.form1.typeid.value==0)
{
  alert('请选择档案的主类别!');
  returnfalse;
}
第四步:新建php文件
在/dede/目录新建一个php文件,命名为checkArcRepeated.php,复制粘贴以下代码保存
<?php
/**
*检测重复文档
*
*@version2023,代码号未授权请勿搬运
*@linkhttp://www.ebingou.cn
*/
require_once(dirname(__FILE__)."/config.php");
$checkWord=$_GET['checkWord'];
$aid=$_GET['aid'];
if(empty($checkWord)||$cfg_check_title=='N'){
    echo'检测功能未开启或者所选文本为空,请联系';
    exit;
}
$where='andmain.arcrank>-1andmain.id=addon.aid';
if(!empty($aid)){
    $where.='andaid<>'.$aid;    
}
$sql="SELECTaidFROMdede_addonarticleaddon,dede_archivesmainWHEREbodyLIKE'%".$checkWord."%'".$where;
$row=$dsql->GetOne($sql);
if(is_array($row)){
    echo'<astyle="color:red;"href="article_edit.php?aid='.$row['aid'].'"target="_blank">编辑文章</a><astyle="color:red;"href="../plus/view.php?aid='.$row['aid'].'"target="_blank">前台预览</a>';
}else{
    echo'ok';
}
使用方法:在添加文章时,随机选择文章内容,选择时注意不要选择有格式的文字,比如加粗、字体大小颜色什么的,反正选择纯文本就好,然后点击保存按钮,这里程序会根据你所选择的内容查找之前添加过的文章有没有包含该段文字的,如果有的话会提示重复,你可以预览或者编辑该重复文章,如果没有重复程序会自动提交并保存文章
到这里dedecms避免添加重复文章的工具就差不多了,有两点需要说下,该工具获取编辑器内选中的文本是以百度编辑器API为基础的,如果你的dedecms没有整合百度编辑器,你可以查看之前代码号写的:dedecms整合百度编辑器(Ueditor)一(基本整合)非要用dedecm自带的编辑器应该也是可以的,你可以去官网查看API
之后来一张图吧,写文章真挺费事的

本文标签:

很赞哦! ()

相关源码

  • (自适应响应式)刷卡机POS机无线支付设备pbootcms网站源码下载本模板基于PbootCMS系统开发,为支付终端设备企业设计,特别适合POS机、移动支付终端、刷卡设备等金融科技产品展示。采用响应式布局技术,确保各类支付终端产品在不同设备查看源码
  • 自适应恒温恒湿机空调机械设备营销型网站模板(自适应手机版)响应式营销型恒温恒湿机环境设备类网站pbootcms模板 蓝色营销型空调设备网站源码下载PbootCMS内核开发的网站模板,该模板适用于营查看源码
  • (自适应响应式)WORDwps办公资源教程资讯网站模板下载基于PbootCMS内核开发的响应式网站模板,为办公教程、WPS技巧分享、职场技能培训等场景打造。模板内置标准化文档分类体系,支持图文/视频教程混合展示,满足现代办公知识传播需求。查看源码
  • (自适应)代理记账财务会计咨询服务个人公司网站模板该响应式网站模板为代理记账、财政咨询及财务会计类企业设计,基于PbootCMS内核开发。通过自适应手机端的HTML5技术,帮助企业高效构建专业财税服务平台查看源码
  • 手机软件APP游戏软件下载网站Pbootcms模板(自适应)基于PbootCMS内核深度开发的网站模板,为移动互联网时代打造。无论是手机APP推广、游戏软件展示,还是各类企业官网需求,本模板都能通过简单的图文替换实现行业无缝切换查看源码
  • 响应式茶叶茶道pbootcms网站模板源码(自适应手机端)棕色复古茶具主题的响应式网站模板,为茶叶茶道企业设计,同时支持古玩字画、艺术文化等行业的快速适配,通过替换文字图片即可转型为其他行业官网,大幅降低开发成本。查看源码
分享笔记 (共有 篇笔记)
验证码:

本栏推荐