在網(wǎng)上一直流傳傳著一個加快wordpress收錄的教程,那就是在wordpress后臺的更新通知服務(wù)里加上百度ping XML_RPC地址來通知百度網(wǎng)站更新了快來收錄,詳情見百度站長平臺:(百度ping)當(dāng)時小V也覺得蠻不錯的就把百度ping和谷歌ping的地址一起加到了wordpress更新通知服務(wù)列表里,如下圖:
由 于最近小V放寒假了所以時間多沒事也喜歡分析下網(wǎng)站日志,最近在分析日志的時候小V發(fā)現(xiàn)添加ping通知服務(wù)后,每次更新來的都是谷歌的蜘蛛,百度蜘蛛根 本不來。按理說百度蜘蛛 就算再大牌也不能一次都不來啊,畢竟是百度也是支持ping協(xié)議的。小V仔細(xì)研究了幾次才發(fā)現(xiàn)原來百度還是耍大牌了,各大廠商,當(dāng)然也包括 WordPress,默認(rèn)的ping服務(wù)都是是3個參數(shù),即網(wǎng)站 名稱,首頁地址,feed地址;而百度這貨的ping呢,則是4個參數(shù),即網(wǎng)站名稱,首頁地址,新網(wǎng)頁的地址,feed地址。所以使用wordpress 默認(rèn)的ping通知服務(wù)是通知不了百度的。。。
既然wordpress的ping通知不兼容百度的ping服務(wù)那么我們只有苦逼的手動去提交地址么?其實小V已經(jīng)找到解決方法了,將以下代碼加到主題的functions.php文件即可解決此問題,代碼如下:
12345678910111213141516function v7v3_baiping($post_id) { $baiduXML ='weblogUpdates.extendedPing' . get_option('blogname') . ' ' . home_url() . ' ' . get_permalink($post_id) . ' ' . get_feed_link() . ' '; $wp_http_obj = newWP_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','v7v3_baiping');
此方法小V已經(jīng)測試幾天了,發(fā)布文章后的確能通知到百度爬蟲來抓取網(wǎng)頁,不相信?發(fā)布文章后過幾分鐘再自己看看網(wǎng)站日志~
未經(jīng)允許不得轉(zhuǎn)載:445IT之家 » wordpress:設(shè)置百度ping服務(wù)不生效怎么辦