当前位置:首页 > CMS教程 > WordPress > 列表

wordpress使用ping百度无效解决方法

发布:smiling 来源: PHP粉丝网  添加日期:2014-06-21 11:17:55 浏览: 评论:0 

由于最近小V放寒假了所以时间多没事也喜欢分析下网站日志,最近在分析日志的时候小V发现添加ping通知服务后,每次更新来的都是谷歌的蜘蛛,百度蜘蛛根本不来,按理说百度蜘蛛 就算再大牌也不能一次都不来啊,毕竟是百度也是支持ping协议的。

小V仔细研究了几次才发现原来百度还是耍大牌了,各大厂商,当然也包括Wordpress,默认的ping服务都是是3个参数,即网站 名称,首页地址,feed地址,而百度这货的ping呢,则是4个参数,即网站名称,首页地址,新网页的地址,feed地址,所以使用wordpress默认的ping通知服务是通知不了百度的.

知道失效的原理解决起来就简单多了,在functions.php里加入如下代码:

  1. function bdping($post_id) { 
  2.     $baiduXML = 'weblogUpdates.extendedPing' . get_option('blogname') . ' ' . home_url() . ' ' . get_permalink($post_id) . ' ' . get_feed_link() . ' '
  3.     $wp_http_obj = new WP_Http(); 
  4.     $return = $wp_http_obj->post('http://ping.baidu.com/ping/RPC2'array('body' => $baiduXML'headers' => array('Content-Type' => 'text/xml'))); 
  5.     if(isset($return['body'])){ 
  6.         if(strstr($return['body'], '0')){ 
  7.             $noff_log='succeeded!'
  8.         } 
  9.         else
  10.             $noff_log='failed!'
  11.         } 
  12.     }else
  13.         $noff_log='failed!'
  14.     } 
  15. add_action('publish_post''bdping'); 

好了,博主也要坐等出效果.

Tags: wordpress ping百度无效

分享到: