WordPress免插件实时推送新链接到百度收录的方法
发表时间:2016-01-09 23:03 | 分类:建站经验 | 浏览:3,026 次
细心的朋友可能已经发现百度站长平台上有个链接提交的选项。百度提供3个方法推送网址收录,分别是主动推送,自动推送和sitemap 。已WordPress为例,主动推送可以在文章发布的同时通知百度,缩短百度爬虫发现站点新链接的时间,使新发布的页面可以在第一时间被百度收录,而且官方说法有效保护原创(看样子百度还是根据收录时间来判断文章是否原创)。自动推送是指只能在页面被访问的时候才会推送给百度,通过javascript脚本实现,优点是部署简单。sitemap是之前常规的网站地图模式,百度定时来抓。
经过上面的介绍,可以发现主动推送效果最好,自动推送次之,sitemap效果最差。部署上主动推送最方便。下面介绍WordPress博客3种方式的新连接提交方法。
1、主动推送
打开WordPress主题文件中的functions.php模板函数文件,在末尾(?>标记前)增加如下代码。
if(!function_exists('Baidu_Submit')){ function Baidu_Submit($post_ID) { $WEB_TOKEN = 'xxxxxxxx'; //这里请换成你的网站的百度主动推送的token值 $WEB_DOMAIN = get_option('home'); //已成功推送的文章不再推送 if(get_post_meta($post_ID,'Baidusubmit',true) == 1) return; $url = get_permalink($post_ID); $api = 'http://data.zz.baidu.com/urls?site='.$WEB_DOMAIN.'&token='.$WEB_TOKEN; $request = new WP_Http; $result = $request->request( $api , array( 'method' => 'POST', 'body' => $url , 'headers' => 'Content-Type: text/plain') ); $result = json_decode($result['body'],true); //如果推送成功则在文章新增自定义栏目Baidusubmit,值为1 if (array_key_exists('success',$result)) { add_post_meta($post_ID, 'Baidusubmit', 1, true); } } add_action('publish_post', 'Baidu_Submit', 0); }
上面代码中的web_token修改成自己的,这个可以通过百度站长后台链接提交页获取。代码中baidusubmit主要防止文章在发布后因为更新造成的重复推送。
2、自动推送
打开WordPress主题文件中footer.php底部文件,在当中添加如下javascript代码。
<script> (function(){ var bp = document.createElement('script'); bp.src = '//push.zhanzhang.baidu.com/push.js'; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script>
3、sitemap推送
使用google或者百度的sitemap插件生成一个sitemap.xml页面,提交到百度站长后台中。
以上三种把文章的新链接推送到百度,实现网站新页面快速收录的方法介绍就完成了,过几天后就可以在后台看到每天推送给百度的链接数量。
参考网址:
http://zhanzhang.baidu.com/college/courseinfo?id=267&page=2
http://zhangge.net/5041.html
已经有6个回复
Comment (6)
Trackbacks (0)
-
还没有Trackbacks
感谢分享
其实个人感觉只要内容好,像我们这样的小站还是轻易能被抓取收录的,如果是大的网站,每天内容比较多,推送可能会有帮助。不过对做原创内容的网站,推送内容对保护原创版权还是有帮助的
是的,主要为了保护原创。其实现在的情况是小网站辛辛苦苦写的原创文章被权重高的站转载后,他们反成了原创,而且很快收录。
添加百度站长就可以了!
我一直不明白,那个百度结构化插件sitemap是实时推送的吗
好像是实时的,不过这个我也没怎么用过。