帝国CMS网站主动推送链接到百度的代码
使用帝国CMS网站的朋友有很多,但是有许多网站更新后不能及时收录,在百度站长平台提供了几种网站链接提交方法可以让百度蜘蛛抓取网站。分别是自动提交、主动推送、网站地图以及手动提交。其中主动推送可以最及时的让百度蜘蛛发现网站最新链接。
在之前,小编更新网站后,要先整理出需要提交的链接,然后放到百度提供的PHP推送代码中(如下段代码),保存为php文件,然后放到网站根目录中,访问该文件才能提交。这样很麻烦。
<?php
$urls = array(
'http://www.example.com/1.html',
'http://www.example.com/2.html',
);
$api = 'http://data.zz.baidu.com/urls?site=www.00cs.cn&token=5La7IjYQPcpWhwiI';
$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;
?>
小编在网上查看其他朋友提交链接的方法,有用插件提交的,这种方法麻烦一次,后期提交会比较方便。这个方法他们介绍很多,大家可以自行查看。
小编使用的方法比较笨一点。
在后台新建自定义页面:
其中代码如下:
[e:loop={"select * from [!db.pre!]ecms_article where date(FROM_UNIXTIME(newstime, '%Y%m%d' ))=curdate() order by id desc",0,24,0}]
<?=$bqsr['titleurl']?>,
[/e:loop]
该代码可以生成当天更新的url链接到page.txt。
在网站根目录新建php文件,保存如下代码:
<?php
$values = fopen('page.txt','r') or die("打开文件失败");
$value = fread($values,filesize('page.txt'));
$value = rtrim($value,",");
$urls =explode(',', $value);
$api = 'http://data.zz.baidu.com/urls?site=example.cn&token=5La7IjYQPcpWhwiI';
$ch = curl_init();
$options = array(
CURLOPT_URL => $api,
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => implode("\r\n", $urls),
CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
echo $result;
echo '<pre>' .htmlspecialchars(print_r($urls, true)) . '</pre>';
?>
各位朋友使用的时候,要将其中的page.txt换成自己的自定义页面名。将其中的api链接换成自己的。
在更新过网站以及自定义页面后,访问根目录中新建的上述文件就可以实现当天新更新页面的提交。
这种方法虽然笨一点,工作量却也不算太大,目前够小编使用。
发表评论