织梦加入百度主动推送代码

作者: 健隆 分类: php 发布时间: 2020-07-18 10:14

今天和大家分享的是关于织梦建站的链接推送实例,例如:你发布了一篇新文章,等着百度来抓取,那就很被动,不知道什么时候才能被收录;但是我们可以主动去推送,下边我们具体来操作说明。 

第一步:首先在织梦的后台添加2个变量。

1.添加cfg_badutoken系统变量

说明:这个里边的数值,大家需要自己在百度站长平台获取,注册--添加你的网站--左侧找到链接提交,就会看到了。截一张图看看。 

上图中红色边框里边的就是我们新加的这个变量的值,每个网站的值是不一样的,一定要准确;

2.添加cfg_baiduhost系统变量

说明:这个变量的值就是你的二级域名,例如:www.baidu.com 。有朋友会说,织梦原本不是有个站点根地址吗?  这里需要说明的域名和站点根地址是不一样的。  

完了之后会得到下边的结果,图中最底部的二个变量就是我们刚添加的,对应的值上边已经提到。  

第二步:找到织梦的档案发布程序文档,以及档案修改程序文档,

说明: 

1、以上二个文档,对应的是百度站长给出的,主动推送(实时),下边的数据类型中,有推送,更新,删除,三个选项,我们主要达到新文章可以推送,更改的文章也可以更新就可以了,至于删除文章,直接做404页面就行了。

2.织梦的这二个文档默认存于,/dede/ 文件夹根目录中, 根据内容模型,默认如下,

文章模型,article_add.php(发布文档);article_edit.php(修改文档)

图片模型,album_add.php (发布文档);album_edit.php(修改文档)

至于你要是新建了模型,那就找对应的这二个文档。 

第三步:修改织梦的档案发布程序文档,以及档案修改程序文档,

1、修改发布文档,搜索 


  1. $artUrl = MakeArt($arcID, true, true,$isremote);
  2. if($artUrl=='')
  3. {
  4. $artUrl = $cfg_phpurl."/view.php?aid=$arcID";
  5. }

在下边加入 


  1. else{
  2. $urls[]='http://'.$cfg_baiduhost.'/'.$artUrl;
  3. $api = 'http://data.zz.baidu.com/urls?site='.$cfg_baiduhost.'&token='.$cfg_badutoken;
  4. $ch = curl_init();
  5. $options = array(
  6. CURLOPT_URL => $api,
  7. CURLOPT_POST => true,
  8. CURLOPT_RETURNTRANSFER => true,
  9. CURLOPT_POSTFIELDS => implode(" ", $urls),
  10. CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
  11. );
  12. curl_setopt_array($ch, $options);
  13. $result = curl_exec($ch);
  14. }

紧接着继续找到,


  1. <a href='catalog_do.php?cid=$typeid&dopost=listArchives'><u>已发布文章管理</u></a>

在下边加入:


  1. <a href=''><u>百度提交返回".$result."</u></a>
  2. &nbsp;&nbsp;

2、修改修改文档,搜索 


  1. $artUrl = MakeArt($arcID, true, true,$isremote);
  2. if($artUrl=='')
  3. {
  4. $artUrl = $cfg_phpurl."/view.php?aid=$arcID";
  5. }

在下边加入 


  1. else{
  2. $urls[]='http://'.$cfg_baiduhost.'/'.$artUrl;
  3. $api = 'http://data.zz.baidu.com/update?site='.$cfg_baiduhost.'&token='.$cfg_badutoken;
  4. $ch = curl_init();
  5. $options = array(
  6. CURLOPT_URL => $api,
  7. CURLOPT_POST => true,
  8. CURLOPT_RETURNTRANSFER => true,
  9. CURLOPT_POSTFIELDS => implode(" ", $urls),
  10. CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
  11. );
  12. curl_setopt_array($ch, $options);
  13. $result = curl_exec($ch);
  14. }

紧接着继续找到,


  1. <a href='catalog_do.php?cid=$typeid&dopost=listArchives'><u>已发布文章管理</u></a>

在下边加入:


  1. <a href=''><u>百度提交返回".$result."</u></a>
  2. &nbsp;&nbsp;

至此,我们的要求也就完成了。 简单的说,就是发布文章后,我们操作了自动推送文章或者是修改文章, 最后我们得到返回信息,成功还是失败。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!