为了让百度及时收录网站新发出的博文,我会提交链接给百度,我看百度说明,发现“主动推送”是所以链接提交方式中最及时的方法,所以我选择“主动推送”。

百度给出的php推送示例如下

$urls = array(
    'http://www.example.com/1.html',
    'http://www.example.com/2.html',
);
$api = 'http://data.zz.baidu.com/urls?site=bukai.men&token=example';
$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;


我们需要手动添加链接到里面去,相当的麻烦,为了减少麻烦,我做了如下修改

  1. 将博文伪静态链接修改为bukai.men/n.html  n=1,2,3,4·····n
  2. 将百度php推送示例修改为如下 
  3. for ($i=$_GET['a']; $i <$_GET['b'] ; $i++) { 
            $urls[]='http://bukai.men/'.$i.'.html';
    }
    $api = 'http://data.zz.baidu.com/urls?site=bukai.men&token=example';
    $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;

    ​这样做以后就不用手动修改php文件里的链接了。

  4. 例子:提交所以博文到百度,我博文总共40篇,从bukai.men/1.html 到 bukai.men/40.html 直接访问m0c0.com/baidu.php?a=0&b=40即可查看效果

标签: none

已有 14 条评论

  1. 有一个自动推送的插件,https://blog.phpgao.com/typecho_plugin_baidusubmit.html

  2. 管他的能收录就收录吧!

    1. 百度死活不收录,我也没有办法啊

  3. 有效果吗?其实我也没在乎百度是否收录了

  4. 这... 没太关注这个

    1. 百度正常收录你的网站,就可以不用关注。百度不收录我的网站,我就拼命提交链接

  5. 我以前的笨办法就是手动收集链接然后在推送,后来测试其实百度自动ping的效果也不错,所以直接去掉了代码,省的百度的js延迟加载。

    1. 之前我也用百度的自动推送,但是我看到那js延迟加载相当不爽,就改成主动推送了。

  6. 呃,还不如在服务器上直接Curl一次性提交

    1. 这个做好了,直接修改2个数字,访问一下就提交。相当方便

添加新评论