WordPress百度主動提交插件避免重復提交
編輯:狂族晨曦 來源:建站分享,WordPress技巧 日期:2015-09-27 閱讀: 2,897 次 2 條評論 » 百度已收錄
9月21日,百度推出了新的WordPress插件:Baidu Links Submit 前幾天,本站也對此發布了一篇文章:
當時剛看到公告,立馬就下載安裝了,有什么優缺點都還不知道。現在,經過幾天的使用,發現這個插件還是像以前的那個wp-baidusubmit一樣,存在嚴重的重復提交問題。也就是,修改已發布文章或頁面會重復推送到百度!一是會拖慢文章更新提交的速度,二是重復提交很有可能會被百度判斷為內容不穩定而放入沙盒,造成收錄延遲展示的問題!
關于這個問題,通過張戈博客找到了解決辦法,下面就為大家介紹方法。
修改代碼
① 打開baidu-links-submit-9.23\inc\hooks.class.php ,打開至第114行,在下方插入以下代碼:
//已提交過的文章避免重復提交 if(get_post_meta($post_id,'Baidusubmit',true) == 1) return;
效果如下,115-116行:

另外,大神露兜提出,“get_permalink函數本身就支持post_id來做參數,百度原版的代碼何必再get_post一次呢?這樣應該好點:
$_url = get_permalink( $post_id );
”,也就是上圖中的第117行,也算是對百度自己做的代碼提出了優化。
②打開baidu-links-submit-9.23\inc\common.class.php ,打開至第88行,在下方插入以下代碼:
//判斷結果,如果成功則計入自定義欄目baidusubmit,值為1
if (!$error = $http->error()){
$ret = self::obj_to_array(json_decode($result,true));
if(!isset($ret['error'])){
add_post_meta($post_id,'Baidusubmit',1,true);
}
}
效果如下,第85-95行:

這樣就解決了重復推送的問題:文章首次發布時,會推送到百度,如果推送成功則新增一個名稱為baidusubmit的自定義欄目。回頭再來更新修改該文章時,則先判斷是否存在這個自定義欄目,如果存在則不再推送到百度。
如果你鐵了心想讓某篇文章再大改后重新推送到百度,則只需要刪除該文章的自定義欄目baidusubmit即可:

好了,這樣就OK了,快去試試吧!
本文鏈接地址:http://www.cnidcc.cn/wp_bdzdtjcjbmcftj.html , 轉載請保留本說明!

川公網安備 51011202000104號
重復提交應該也沒有關系吧
@云上小悟獨立博客: 重復提交導致的問題有兩個:一是會拖慢文章更新提交的速度,二是重復提交很有可能會被百度判斷為內容不穩定而放入沙盒,造成收錄延遲展示的問題。