最近由于熊掌号升级后站长来咨询织梦帮API提交问题,织梦有没有插件或者代码能自动提交熊掌号数据的,期间我也帮助了不少站长,发现还是直接发一个教程,以后大家直接看教程操 […]
最近由于熊掌号升级后站长来咨询织梦帮API提交问题,织梦有没有插件或者代码能自动提交熊掌号数据的,期间我也帮助了不少站长,发现还是直接发一个教程,以后大家直接看教程操作。今天织梦帮站长教大家学会DedeCMS实现百度熊掌号API提交接口推送(PHP推送)。
本教程是采用php来提交,这样可以全自动的批量提交网站的url。
首先我们看看熊掌id官方给出的示例代码:
$urls = array( 'http://www.example.com/1.html', 'http://www.example.com/2.html', ); $api = 'http://data.zz.baidu.com/urls?appid=1596002713017672&token=vsaJJ3BFNUGx9lGH&type=batch'; $ch = curl_init(); $options = array( CURLOPT_URL => $api, CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_POSTFIELDS => implode(" ", $urls), CURLOPT_HTTPHEADER => array('Content-Type: text/plain'), ); curl_setopt_array($ch, $options); $result = curl_exec($ch); echo $result;
我们只需要把其中的url地址改为变量,还有就是把API接口改成自己的就行。
结合织梦的变量修改后的代码如下:
<?php require_once ("include/common.inc.php"); require_once "include/arc.partview.class.php"; require_once('include/charset.func.php'); $year = date("Y"); $month = date("m"); $day = date("d"); $dayBegin = mktime(0,0,0,7,1,2015); $dayEnd = mktime(23,59,59,$month,$day,$year); $query = "SELECT arch.id,types.typedir FROM dede_arctype as types inner join dede_archives as arch on types.id=arch.typeid where pubdate<".$dayEnd." AND pubdate>".$dayBegin.""; $urls=""; $dsql->Execute('arch.id,types.typedir',$query); while($row = $dsql->GetArray('arch.id,types.typedir')) { $urls.="https://www.dedesos.com".str_replace("{cmspath}","",$row['typedir'])."/".$row[id].".html".","; } $urls=substr($urls,0,-1); $urls = explode(",",$urls); $api = 'http://data.zz.baidu.com/urls?appid=熊掌idID&token=密钥&type=batch'; $ch = curl_init(); $options = array( CURLOPT_URL => $api, CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_POSTFIELDS => implode(" ", $urls), CURLOPT_HTTPHEADER => array('Content-Type: text/plain'), ); curl_setopt_array($ch, $options); $result = curl_exec($ch); echo $result; ?>
以上代码大家需要修改三个地方:
1、建站时间
$dayBegin = mktime(0,0,0,7,1,2015);
将上面的时间改成自己的,其中7代表月份,1代表日期,2015代表年份
2、url地址修改
$urls.="https://wwww.dedesos.com".str_replace
将上面的https://wwww.dedesos.com修改为你自己的主网站
3、历史数据API接口
$api = 'http://data.zz.baidu.com/urls?appid=熊掌idID&token=密钥&type=batch';
按照上面的文字说明修改成自己的
代码释义:
1、$query中“dede_archives”为自己数据库中存放文章的表,如果你的数据库表头做了修改,这里也要做响应修改。
2、本代码自动获取网站的所有历史文章链接,设置两个时间戳,mktime(23,59,59,$month,$day,$year)和mktime(0,0,0,7,1,2015),也就是把网站的所有历史文章都自动提取出来。
3、将文件中的密钥和网址改成自己的即可,将修改后的PHP文件上传到网站根目录,浏览器中输入:http://你的域名/baiduxz_new.php和http://你的域名/baiduxz_old.php,即可看到API提交的效果。
返回信息如何,表示成功
{"remain":9,"success":1,"success_realtime":1,"remain_realtime":9}
代码下载地址:链接: https://pan.baidu.com/s/15d_pbqXfVMjy8s4unae7pQ 提取码: 4p14