百度站长平台最近改版,大家也是都知道的事情,关注最高的应该还是sitemap的权限以及链接的自动提交推送的改版,再改版前期百度站长平台进行了一段时间的sitemap的抽奖活动,呵呵抽到了几个站的权限。
百度站长平台又推出了另一个链接自动推送提交,以前大多用到的都是链接PING百度或者,链接提交。现在百度新工具出来也是值得研究研究的。毕竟对有质量的文章内容的收录有帮助就是要做的事。
切入正题,百度的链接提交一共给了“curl推送”、“post推送”、“php推送”、“ruby推送”。这里只对PHP相比较而言熟悉一点,其他的推送方式这里就不说了,因为我也不是很理解,具体可以验证自己网站在百度站长平台的链接提交查看具体格式,这就不罗列出来了。
大概说一下百度站长平台的PHP我对他的解释:
先引用出官方给示例:
$urls = array( 'http://www.zongk.com/1.html', 'http://www.zongk.com/2.html', ); $api = '接口调用地址'; $ch = curl_init(); $options = array( CURLOPT_URL => $api, CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_POSTFIELDS => implode("\n", $urls), CURLOPT_HTTPHEADER => array('Content-Type: text/plain'), ); curl_setopt_array($ch, $options); $result = curl_exec($ch); echo $result; |
先把链接转为数组array:“$urls”,implode的PHP函数,将数组转为将数组变成字符串(百度给的答案)推送给百度,然后返回结果,其他看不懂,不专业也不做解释,我只要知道把要推送的URL调用出来转成数组,然后将数组转成字符串推送给百度就可以了。
具体实施阶段:
步骤主要针对帝国CMS,如果你是其他系统,做一个推送的PHP文件,和在服务器根目录里面放一个要推送的链接的TXT文档就可以了,推送时访问PHP文件,我是让他加入了360的网站HTTP监控,60分钟监控一次(本来想24小时的,发现最长是60分钟),言外之意就是,你只需要把要推送的URL链接放到TXT之后其他都是自动的。帝国CMS我是做了两个自定义页面,一个生成TXT文件,一个生成PHP文件,PHP文件调用TXT文件链接。OK!下面引用PHP文件内容:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>百度站长链接PHP提交</title> </head> <body> <?php $file = 'http://www.zongk.com/davidszhou.txt'; //TXT文件的路径 $content = file_get_contents($file); // file_get_contents() 函数把整个文件读入一个字符串中 $array = explode(",", $content); // explode() 函数把字符串分割为数组,注意帝国CMS自定义页面的标签模版每一个链接后面加,号 for($i=0; $i<count($array); $i++) // 这里是循环查找数组的每一个链接 { echo $array[$i].','; //显示数组里面链接 echo "<br />"; //换行 } $urls = array( $array[$i] ); // 其实这里百度给的这个数组我觉得就不需要了,放在这里吧 echo "<br />"; $api = '接口调用地址'; //站长后台验证站点后链接提交会有一个针对每个站的接口调用地址 $ch = curl_init(); $options = array( CURLOPT_URL => $api, CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_POSTFIELDS => implode(",",$array), CURLOPT_HTTPHEADER => array('Content-Type: text/plain'), ); //这里以上应该都是推送数据的方式,注意CURLOPT_POSTFIELDS步骤的修改,由于前面我们已经分割为数组了,是以,号做分割,这里由原变量“$urls”改为“$array”,且分隔符改为“,”号 curl_setopt_array($ch, $options); $result = curl_exec($ch); echo $result; //剩下的应该是调取返回结果,和显示结果 ?> </body> </html> |
帝国CMS的自定义页面以及360网站监控的HTTP监控方式的建立官方都有步骤这里就不详解了,官方都有详解。有问题下面留言。最后截图运行结果如下:
第一张图是之前推送的结果,第二张图是修改为最新文章推送之后的结果,发现“remain”数值少了。过段时间百度站长后台有数据之后在截图更新,PS:这里也有sitemap权限推送。
发现百度每天貌似限制了50条链接URL的推送。另外我的TXT自定义页面是随机调用链接,这里也可以调用最新的链接(准备也改成推送最新的URL),建议最新链接。另外谁有更好的方法或者改进以及有错误的地方麻烦分享一下.
该篇文章有错误:请移步针对《百度站长平台链接自动提交PHP推送实现方式》修正优化
来自Davids zhou博客原创文章请尊重作者:http://www.zongk.com/zongk/54.html转载请标注此链接
Davids zhou | 站点地图 | | | 皖ICP备14017762号 如有侵犯您权利点击上面QQ -Powered By 帝国CMS -davids.zhou#qq.com(#换@)
Davidszhou个人博客主要记录在网站建设、SEO优化、python开发、PHP开发中遇到问题记录保存,作为他人参考学习教程