环境要求
PHP必须开启了curl扩展
百度快速收录可以缩短百度爬虫发现您站点新链接的时间,使新发布的页面可以在第一时间被百度收录
织梦程序我们可以在后台添加文档完成那一刻即时主动推送到百度快速收录,也可以在后台文档列表里批量推送
效果
织梦百度快速收录推送教程
变量名称
cfg_shoulu_push
参数说明
百度快速收录
变量值
登录你的百度平台 https://ziyuan.baidu.com 获取接口调用地址
如图,注意你的站点域名要对应上
2、打开 /dede(后台目录)/inc/inc_archives_functions.php 在文件最末尾插入
/**
* 百度主动推送
*/
function shoulu_push($id="",$qstr="")
{
global $cfg_multi_site,$cfg_basehost,$cfg_shoulu_push;
if(!empty($id) && !empty($cfg_shoulu_push))
{
if( !empty($id) && empty($qstr) ) $qstr = $id;
if($qstr=='')
{
exit();
}
$qstrs = explode('`',$qstr);
$cfg_domain = $cfg_multi_site == 'N' ? $cfg_basehost : '';
$urls = array();
$i = 0;
foreach($qstrs as $aid)
{
$i++;
$arcrow = GetOneArchive($aid);
$url = $cfg_domain.$arcrow['arcurl'];
$urls[] = $url;
$artlist .= $url."<br />";
}
if($i>1) $artlist = "";
if(!empty($urls)){
$ch = curl_init();
$options = array(
CURLOPT_URL => trim($cfg_shoulu_push),
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);
curl_close($ch);
$result = json_decode($result, true);
if(isset($result['success'])){
$not_same_site = isset($result['not_same_site'][0]) ? " <font style='color:#f00;'>推送链接与百度绑定站点不一致</font> " : "";
$not_valid = isset($result['not_valid'][0]) ? " <font style='color:#f00;'>推送链接不合法</font> " : "";
return $not_same_site . $not_valid . '百度快速收录推送成功 '.$result['success'].' 条!当天剩余 '.$result['remain'].' 条可推送!'.$artlist;
}else{
return '百度快速收录推送失败,错误码:'.$result['error'].'<a href=https://ziyuan.baidu.com/college/courseinfo?id=267&page=2#h2_article_title12 target=_blank>详情</a>';
}
}
return "没有数据被推送!";
}
}
3、找到后台文档发布程序PHP文件
【普通文章】模型的是
/dede/article_add.php
【图片集】模型的是
/dede/album_add.php
【软件】模型的是
/dede/soft_add.php
【商品/自定义模型】模型的是
/dede/archives_add.php
根据你的需要在对应的php文件中找到
//返回成功信息
在它上面加入
if(!empty($cfg_baidu_push))
{
$backurl .= "<p> ".shoulu_push($arcID)."</p>";
}
继续找到
line-height:36px;height:36px
改成
line-height:36px;
至此,织梦发布文档主动推送到百度功能完成。
织梦后台文档列表添加批量推送至百度快速收录
效果如图
批量推送实现教程
1、打开 /dede/templets/content_list.htm (软件模型和自定义模型是 /dede/templets/content_i_list.htm) 找到
删除属性
这一行,在它下面添加
<a href="javascript:shoulu_push(0)" class="coolbg"> 推送至百度 </a>
<script type="text/javascript">
function baidu_push(aid)
{
var qstr=getCheckboxItem();
if(aid==0) aid = getOneItem();
location="archives_do.php?aid="+aid+"&dopost=shoulu_push&qstr="+qstr;
}
</script>
2、打开 /dede/archives_do.php 找到末尾一行的
?>
在它上面加入
else if($dopost=='shoulu_push')
{
if( !empty($aid) && empty($qstr) ) $qstr = $aid;
if($qstr=='')
{
ShowMsg('参数无效!',$ENV_GOBACK_URL);
exit();
}
require_once(DEDEADMIN.'/inc/inc_archives_functions.php');
$result = shoulu_push($qstr);
ShowMsg($result,$ENV_GOBACK_URL,0,5000);
exit();
}