织梦实现链接提交给百度 主动推送的实例操作

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

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

1.添加cfg_badutoken系统变量

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

织梦实现链接提交给百度 主动推送的实例操作_第1张图片

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

2.添加cfg_baiduhost系统变量

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

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

织梦实现链接提交给百度 主动推送的实例操作_第2张图片

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

说明: 

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

织梦实现链接提交给百度 主动推送的实例操作_第3张图片

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

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

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

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

织梦实现链接提交给百度 主动推送的实例操作_第4张图片

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

1、修改发布文档,搜索

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

在下边加入

else{
$urls[]='http://'.$cfg_baiduhost.'/'.$artUrl;  
$api = 'http://data.zz.baidu.com/urls?site='.$cfg_baiduhost.'&token='.$cfg_badutoken;
$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);
}

紧接着继续找到,

已发布文章管理

在下边加入:

百度提交返回".$result."  
  

2、修改修改文档,搜索 (两种不同版本的dedecms写法)

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

$artUrl = MakeArt($id,true,true,$isremote);

if($artUrl=='') { $artUrl = $cfg_phpurl."/view.php?aid=$id"; }

在下面加入:

else{
$urls[]='http://'.$cfg_baiduhost.'/'.$artUrl;  
$api = 'http://data.zz.baidu.com/update?site='.$cfg_baiduhost.'&token='.$cfg_badutoken;
$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);
}

紧接着继续找到,(两种不同版本的dedecms写法

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

在下面输入:

百度提交返回".$result."  
  

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

按照上述方法来,有不懂的可以下边留言。


你可能感兴趣的:(dedecms,php,HTML,&,XML)