[原创]DEDECMS后台查询文章在百度是否收录插件

[原创]DEDECMS后台查询文章在百度是否收录插件
 点击下载

dedecms后台查询文章在百度是否收录,这个属于小功能,网上也有别的大神做的同类功能,但是找到的都收费,而且在我看来很贵,并且很臃肿,用的ajax动态更新,感觉没必要,文章只要被百度收录了,并不是每天都更新,我们只需要知道这篇文章是否被收录就够了。也许一个月查一次,一个星期查一次都行,不需要每次打开列表都查询,太费资源了。基于此,本人不才,拼凑了这个小功能,并没有借鉴任何人的程序,本人也属于php菜鸟,对php懂得很少,也许程序不够完善,但在我看来,的确够用了。

注:由于考虑不周,网站内页地址不是伪静态形势的,用起来会很麻烦,下载请谨慎。

首先奉上效果图:

dedecms后台查询文章在百度是否收录

一、了解本插件实现的功能。

DEDECMS后台查询文章在百度是否收录插件,基于dede后台中的文档批量维护功能制作,是在数据主表 archives 中添加了一个字段 kdate,存储百度快照数据,后台查询每篇文章是否在百度存在快照,如果不存在则写入未收录,如果存在,则写入快照日期。

二、具体实现方法

1.下载压缩包,解压后得到模块文件,在后台上传模块并安装。

2.安装后插件是不能正常使用的,需要做如下操作:(注:安装后不能使用是因为作者的后台文件都有改动,并不是原始的,又不想去更换原始的。怕用户安装以后出问题,所以模块包并没有把模版包含进去。)

打开后台目录dede/templets/content_batch_up.htm,找到:“删除文档”四个字,在其下面添加:

  1. <input name="action" type="radio" class="np" id="delradio" value="zhizhu" onClick="ShowHideMove()" /> 
  2.         验证是否被百度收录 

这个主要是在 核心-批量维护-文档批量维护 页面中添加 验证是否被百度收录 选项,本插件就是依托于文档批量维护功能,如下图:

打开zhizhu.php找到:

  1. $domain = "http://www.daimajiayuan.com/sitejs-".$id."-1.html";/*欲查询的页面*/ 

作者并不知道你的页面地址是什么,所以需要你手工来改动。$id是文章的id,两侧双引号中的代码根据你自己的url更改,如果用的是伪静态,那最简单不过了。如果是动态地址,例如这样的地址:

  1. http://www.xxx.com/plus/view.php?aid=11824 

需要改为:

  1. $domain = "http://www.xxx.com/plus/view.php?aid=".$id;/*欲查询的页面*/  

打开dede/templets/content_list.htm文件,找到:

  1. colspan="10" 

改为:

  1. colspan="11" 

(会html的同学应该懂吧。)这是开始增加表格列,找到

  1. <td width="8%">权限</td> 

在后边加入:

  1. <td width="8%">快照日期</td> 

这个百分比自己把握哦,然后再找到:

  1. <td>{dede:field.arcrank function="GetRankName(@me)"/}</td> 

在后边加入:

  1. <td>{dede:field.kdate/}</td> 

打开content_list.php,找到:

  1. $query = "SELECT arc.id,arc.typeid,arc.senddate,arc.flag,arc.ismake, 

在半角逗号后边加入

  1. arc.kdate, 

到此,代码的改动工作就完了。去后台试试功能。

在核心--批量维护--文档批量维护中,你可以选择按栏目来,也可以选择ID范围来,如上图所示那样,结束后会显示下图。

查询完以后你就知道,你那篇文章没被收录喽。据我自己的使用情况,1W篇文章大概需要40分钟的时间来查询。准确率在99%以上,为什么这么说呢,因为网络原因,可能会有一点网址抓取超时而跳过。不过已经在程序里边尽量避免了。对此情况,请勿喷。

本篇插件文章有似水星辰原创制作。

转载请注明:代码家园 » [原创]DEDECMS后台查询文章在百度是否收录插件

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)