百度站长平台链接自动提交PHP推送实现方式

作者:Davidszhou   来源:SEO优化博客   时间:2015-06-14 23:18:34   点击:

            百度站长平台最近改版,大家也是都知道的事情,关注最高的应该还是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推送实现方式》修正优化

TAGS:百度站长平台 , 链接自动提交 , PHP推送

来自Davids zhou博客原创文章请尊重作者:http://www.zongk.com/zongk/54.html转载请标注此链接

七日热点
热力推荐
网站统计
文章总数:138
今天发布:0
软件资源数:20