一 什么是PING服务

过程上简单的讲就是没发布一个新文章,都会通知搜索引擎(google baidu等等),搜索引擎会很快派来蜘蛛抓取你的新文章,这样会提高收录的速度(特殊网站除外);都是针对博客的,不知道收录方面对其他CMS有什么效果;

以上是trylife个人的解释,下面是COPY百度的:ping是基于XML_RPC标准协议的更新通告服务,是用于blog在内容更新时通知百度blogsearch及时进行抓取、更新的方式。百度 blogsearch在成功接受到ping以后,会立刻进行抓取并更新。使用ping服务,可以让百度blogsearch在第一时间抓取到您博客上的新 内容。

下面是COPY google的:通过 Google“博客搜索”Ping API, 用户可以程序化的方式将博客内容的更新通知给 Google“博客搜索”引擎。这对于经常更新博客内容的用户尤其有用。博客服务提供商的管理人员也可以利用此API将其平台上的博客内容变化向 Google 通告,以便 Google“博客搜索”及时抓取来自这一服务提供商的最新内容。为设置对 Google“博客搜索”的自动 Ping 机制,请按照如下所述设置XML-RPC客户端或REST客户端以发送请求。您可以任选一种方法进行通知;两者都将按照相同的方式进行处理。

二 帝国CMS PING插件功能需求

1.是否开启
2.PING服务地址列表
3.功能支持栏目
4.动作选项:后台录入 前台投稿 采集更新 采集器更新
5.针对采集器的设置(针对其他操作增加PING功能)

三 帝国CMS PING插件实现思路

功能的实现思路很简单,通过在(后台添加信息/会员投稿/采集入库)函数体内信息录入成功 和 返回代码前加入PING功能函数;注意:采集入库是循环录入只有所有需要入库内容循环完才有返回成功代码,所以帝国自带的采集入库是在循环录入代码中加入PING函数的;另外采集器是通过前台/后台重复投稿脚本来实现的,我们要在采集器的脚本中加入我们的PING函数;我们按着其他情况来对待。

数据库:
数据库这里我们设置两个字段id,item每行记录一个功能的设置;主要针对增加PING功能的可拓展性选择这样的记录方式;固定操作动作可以使用行记录比如帝国CMS的phome_enewspublic(系统设置记录表)

新建[文件/函数/目录]:
1.根据PING功能写函数 (PING函数 缓存更新函数 插件设置函数)
2.函数定义在一个新文件里这样对于插件作者备份查看函数方便 比如:e/trylife/ping/function.php
3.将2中的文件require到e/userfun.php (建议大家都这样做)
4.其他文件 插件设置文件e/trylife/ping/index.php

更改[函数]:
主要更改 后台/前台/采集 增加信息函数 在函数成功printerror()前加入我们的PING函数就可以;

缓存文件:
1.设置缓存
2.PING地址缓存

四 帝国CMS PING插件 制作

待续 [最近忙,先写文章放到这,后面有时间去挖掘实现,再看看自己过段时间的想法是不是一样]

五 帝国CMS PING插件 测试

针对SEO和不同站点收录速度的测试不好做,测试主要针对一个已经被收站,PING后蜘蛛来的速度来评估;主要记录文章发布时间和蜘蛛来的时间;

六 帝国CMS PING插件 讨论&总结