WordPress中如何实现Ping功能

    技术2025-08-07  16

    WordPress中如何实现Ping功能

    使用WordPress的朋友都知道通过配置WordPress的Ping服务列表,就可以在你发布新文章时,立即自动通知搜索引擎蜘蛛来抓取,第一时间更新订阅的频道(Feed)。 所以添加Google的Ping地址到WordPress的Ping服务列表,然后通过使用WordPress博客发表的文章能够很快出现在Google的数据库中。 在这里分析一下WordPress的Ping功能到底是如何实现的。 在分析Ping功能是首先需要了解以下几点: 1.WordPress的Ping服务列表存放在数据库中的位置是: 复制内容到剪贴板
    代码:
    //wp_options 表 SELECT * FROM wp_options WHERE option_name='ping_sites' 2.WordPress中提供了Trackback和Ping两种功能。 因为接触WP时间不长,对于其中的很多功能还不太熟悉,所以暂时只找到在wp_includes/comment.php文件中有关于Ping服务的代码: 大家可以在此文件中摸查如下几个函数: function do_all_pings() function pingback($content, $post_ID) function weblog_ping($server = '', $path = '') 我觉得最重要的函数是:weblog_ping 具体代码如下: 复制内容到剪贴板
    代码:
    function weblog_ping($server = '', $path = '') {     global $wp_version;     include_once(ABSPATH . WPINC . '/class-IXR.php');     // using a timeout of 3 seconds should be enough to cover slow servers     $client = new IXR_Client($server, ((!strlen(trim($path)) || ('/' == $path)) ? false : $path));     $client->timeout = 3;     $client->useragent .= ' -- WordPress/'.$wp_version;     // when set to true, this outputs debug messages by itself     $client->debug = false;     $home = trailingslashit( get_option('home') );     if ( !$client->query('weblogUpdates.extendedPing', get_option('blogname'), $home, get_bloginfo('rss2_url') ) ) // then try a normal ping         $client->query('weblogUpdates.ping', get_option('blogname'), $home); } 其中的weblogUpdates.extendedPing与Google“博客搜索”帮助中描述的情况一致:
    引用:
    关于 Google“博客搜索”Ping 服务应用编程接口(API) XML-RPC客户的请求应包含如下元素: RPC端点: http://blogsearch.google.com/ping/RPC2 调用方法名:   weblogUpdates.extendedPing 参数: (应按照如下所列的相同顺序传送) 站点名 站点URL 需要检查更新的页面URL 相应的RSS、RDF或Atom种子的URL 可选 页面内容的分类名称(或标签)。您可以指定多个值,之间用'|'字符进行分隔。 XML-RPC响应中将返回含有两个元素的<struct> : flerror (Boolean):当有错误发生时设为true/1 message (string) :"Thanks for the ping." (如果成功) 或者一个错误信息(如果不成功)。

    常用的 XML-RPC Ping Services

    http://rpc.pingomatic.com http://rpc.twingly.com http://api.feedster.com/ping http://api.moreover.com/RPC2 http://api.moreover.com/ping http://api.my.yahoo.com/RPC2 http://api.my.yahoo.com/rss/ping http://www.blogdigger.com/RPC2 http://www.blogshares.com/rpc.php http://www.blogsnow.com/ping http://www.blogstreet.com/xrbin/xmlrpc.cgi http://bulkfeeds.net/rpc http://www.newsisfree.com/xmlrpctest.php http://ping.blo.gs/ http://ping.feedburner.com http://ping.syndic8.com/xmlrpc.php http://ping.weblogalot.com/rpc.php http://rpc.blogrolling.com/pinger/ http://rpc.technorati.com/rpc/ping http://rpc.weblogs.com/RPC2 http://www.feedsubmitter.com http://blo.gs/ping.php http://www.pingerati.net http://www.pingmyblog.com http://geourl.org/ping http://ipings.com http://www.weblogalot.com/ping
    最新回复(0)