联系电话:18858105031
您当前的位置:杭州SEO中心 > SEO工具 >

织梦dedecms实现百度主动推送教程(附代码)

今天我们就根据百度站长平台的主动推送接口来写个关于织梦dedecms发布文章实时推送给百度的教程,具体操作步骤如下:


关于织梦的百度实时推送大体上可以有两种方法,大家根据需要来选择下面的两种方案中的一种

 

第一种方法是手动创建一个文件,我们在根目录下面创建一个dedejs.php,里面的代码如下:

 

01 <?php
02  require_once ("include/common.inc.php");
03  require_once "include/arc.partview.class.php";
04  require_once('include/charset.func.php');
05  
06  $year date("Y");
07  $month date("m");
08  $day date("d");
09  $dayBegin mktime(0,0,0,$month,$day,$year);//当天开始时间戳
10 $dayEnd mktime(23,59,59,$month,$day,$year);//当天结束时间戳
11  
12 $query "SELECT arch.id,types.typedir FROM xihuseo_arctype as types inner join xihuseo_archives as arch on types.id=arch.typeid where pubdate<".$dayEnd." AND pubdate>".$dayBegin."";  //这里dede换成你们自己的表前缀
13  
14  
15 $urls="";
16                 
17  $dsql->Execute('arch.id,types.typedir',$query);
18  while($row $dsql->GetArray('arch.id,types.typedir'))
19  {
20      $urls.="https://你的域名".str_replace("{cmspath}","",$row['typedir'])."/".$row[id].".html".",";  
21      //将上边的“https://你的域名”换成你的网址
22 }
23  $urls=substr($urls,0,-1);
24  $urls    explode(",",$urls);
25  
26  $api 'https://data.zz.baidu.com/urls?site=dedejs.com&token=xxxxx'; // 前边的site换成自己的site    xxx换成自己的密钥
27 $ch = curl_init();
28  $options =  array(
29      CURLOPT_URL => $api,
30      CURLOPT_POST => true,
31      CURLOPT_RETURNTRANSFER => true,
32      CURLOPT_POSTFIELDS => implode("\n"$urls),
33      CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
34  );
35  curl_setopt_array($ch$options);
36  $result = curl_exec($ch);
37  echo $result.count($urls);
38  ?>

 

注意里面的域名跟数据库前缀自己修改成自己的。

 

站长在每天发布完内容之后再访问一下这个文件就可以把当天发布的全部文章推送到百度搜索引擎。访问后会返回百度接口结果。

 


百度接口返回说明:

 

如果推送成功,状态码为200,可能返回以下字段:

 

推送成功返回的字段

 


代码示例:

 

{
    "remain":4999998,
    "success":2,
    "not_same_site":[],
    "not_valid":[]
}

 


如果推送失败,状态码为4xx,返回字段如下:

 

推送失败返回的字段

 


代码示例:
{
    "error":401,
    "message":"token is not valid"
}

 

这样就很清晰的反映出是否推送成功。

 


第二种方法是每发布完一篇文章就向百度推送一次,这种比较方便,也推荐大家用这种方法:


  
我们打开后台管理目录下的article_add.php文件,找到差不多第262行的地方即注释为“返回成功信息”的上面一行加入以下代码 :



 

01 $urls=“https://dedejs.com".$artUrl;//前面域名换成你自己的
02     $urls    = explode(",",$urls);
03  
04      $api = 'https://data.zz.baidu.com/urls?site=dedejs.com&token=xxxx'; // 前边site换成自己的site   xxx换成自己的密钥
05     $ch = curl_init();
06      $options =  array(
07          CURLOPT_URL => $api,
08          CURLOPT_POST => true,
09          CURLOPT_RETURNTRANSFER => true,
10          CURLOPT_POSTFIELDS => implode("\n", $urls),
11          CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
12      );
13      curl_setopt_array($ch, $options);
14      $result = curl_exec($ch);

 

注意里面的域名换成自己的


 

添加完成后保存即可,如果想看推送是否成功可以修改下面的提示信息,代码如下:

 

1 请选择你的后续操作".$result.$urls[0]."

 

这样发布文章之后就会显示如下图的提示:

 

推送成功提示

 


织梦发布文章实时推送到百度的教程就写到这里,有需要的可以试着做一下这样的功能,这样对SEO的好处毕竟还是很大的。


如果您需要帮助,可以立即拨打我们的服务热线!
杭州SEO服务
售后服务
Totop