【www.bbyears.com--WordPress】
接下来援引奶嘴文章中的几句话
由于最近小V放寒假了所以时间多没事也喜欢分析下网站日志,最近在分析日志的时候小V发现添加ping通知服务后,每次更新来的都是谷歌的蜘蛛,百度蜘蛛根本不来。按理说百度蜘蛛 就算再大牌也不能一次都不来啊,毕竟是百度也是支持ping协议的。小V仔细研究了几次才发现原来百度还是耍大牌了,各大厂商,当然也包括Wordpress,默认的ping服务都是是3个参数,即网站 名称,首页地址,feed地址;而百度这货的ping呢,则是4个参数,即网站名称,首页地址,新网页的地址,feed地址。所以使用wordpress默认的ping通知服务是通知不了百度的。。。
知道失效的原理解决起来就简单多了,
在functions.php里加入如下代码
代码如下function bdping($post_id) {
$baiduXML = "weblogUpdates.extendedPing" . get_option("blogname") . " " . home_url() . " " . get_permalink($post_id) . " " . get_feed_link() . " ";
$wp_http_obj = new WP_Http();
$return = $wp_http_obj->post("http://ping.baidu.com/ping/RPC2", array("body" => $baiduXML, "headers" => array("Content-Type" => "text/xml")));
if(isset($return["body"])){
if(strstr($return["body"], "0")){
$noff_log="succeeded!";
}
else{
$noff_log="failed!";
}
}else{
$noff_log="failed!";
}
}
add_action("publish_post", "bdping");
好了,博主也要坐等出效果