|
<p class="pgc-img-caption">
</p><p>
编辑搜图
</p><p>
请点击输入图片描述
</p><p>
利用api接口纯代码给WordPress文章添加百度收录判断
</p><p>
本站的api接口是https://wwww.520yxl.cn/api/baidu.php?domain=
</p><p>
api接口文件代码如下:代码来自Weifeng's Blog
</p><p>
<?php
</p><p>
/**
</p><p>
* Baidu
</p><p>
* @editer: Weifeng
</p><p>
* @link: https://wfblog.net
</p><p>
* @version: 1.0
</p><p>
*/
</p><p>
error_reporting(0);
</p><p>
header("Access-Control-Allow-Origin:*");
</p><p>
header('Content-type: application/json');
</p><p>
$domain = @$_GET['domain'];
</p><p>
if(!isset($domain) || empty($domain) || $domain==''){
</p><p>
$data = array(
</p><p>
"code" => false,
</p><p>
"msg" => "未传入请求参数!"
</p><p>
);
</p><p>
echo json_encode($data,JSON_UNESCAPED_UNICODE);
</p><p>
exit;
</p><p>
}
</p><p>
if(substr($domain, -1) == '/'){
</p><p>
$domain = substr($domain,0,strlen($domain)-1);
</p><p>
}
</p><p>
$data = checkBaidu($domain);
</p><p>
echo json_encode($data,JSON_UNESCAPED_UNICODE);
</p><p>
function checkBaidu($url){
</p><p>
$header = array(
</p><p>
"Host:www.baidu.com",
</p><p>
"Content-Type:application/x-www-form-urlencoded",//post请求
</p><p>
"Connection: keep-alive",
</p><p>
"Referer:https://www.baidu.com",
</p><p>
"User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.162 Safari/537.36"
</p><p>
);
</p><p>
$url = 'https://www.baidu.com/s?ie=UTF-8&wd='.urlencode($url).'&usm=3&rsv_idx=2&rsv_page=1';
</p><p>
$ch = curl_init();
</p><p>
curl_setopt($ch, CURLOPT_URL, $url);
</p><p>
curl_setopt ($ch, CURLOPT_HTTPHEADER, $header);
</p><p>
curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1);
</p><p>
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
</p><p>
$output = curl_exec($ch);
</p><p>
curl_close($ch);
</p><p>
if(strpos($output, '没有找到') || strpos($output, '很抱歉')){
</p><p>
$data = array(
</p><p>
"code" => 403,
</p><p>
"msg" => "该域名暂时未被百度收录!"
</p><p>
);
</p><p>
}else{
</p><p>
$number = GetBetween($output,'<span class="nums_text">百度为您找到相关结果约','个</span>');
</p><p>
if(empty($number) || $number == 0){
</p><p>
$number = GetBetween($output,'<b>找到相关结果数约','个</b></p>');
</p><p>
if(empty($number) || $number == 0){
</p><p>
$data = array(
</p><p>
"code" => false,
</p><p>
"msg" => "获取百度收录失败!"
</p><p>
);
</p><p>
return $data;
</p><p>
}
</p><p>
}
</p><p>
$data = array(
</p><p>
"code" => 200,
</p><p>
"msg" => "该域名已被百度收录!",
</p><p>
"number" => str_replace(',','',$number)
</p><p>
);
</p><p>
}
</p><p>
return $data;
</p><p>
}
</p><p>
function GetBetween($content,$start,$end){
</p><p>
$r = explode($start, $content);
</p><p>
if (isset($r[1])){
</p><p>
$r = explode($end, $r[1]);
</p><p>
return $r[0];
</p><p>
}
</p><p>
}
</p><p>
?>
</p><p>
使用方法
</p><p>
以知更鸟的Begin主题为例
</p><p>
打开/wp-content/themes/begin/inc下的post-meta.php文件,在if (zm_get_option('baidu_record')) {baidu_record_t();}的下方添加下方代码,约在55行。以及在if (zm_get_option('baidu_record')) {baidu_record_b();}的下方添加下方代码,约在143行。
</p><p>
//文章百度收录判断
</p><p>
$url = get_permalink();
</p><p>
$result = file_get_contents("https://www.520yxl.cn/api/baidu.php?domain=".$url);//此处的api接口连接可以换成自己的
</p><p>
$arr=json_decode($result,true);
</p><p>
if ($arr['code']==200) {
</p><p>
echo '<span class="baidu-r"><a target="_blank" title="点击查看" rel="external nofollow" href="http://www.baidu.com/s?wd='.get_the_title().'&tn=bds&cl=3&ct=2097152&si=' . $_SERVER['SERVER_NAME']. '&s=on"><i class="be be-baidu"></i>已收录</a></span>';
</p><p>
} else {
</p><p>
echo '<span class="baidu-r"><a rel="external nofollow" title="一键提交给百度" target="_blank" href="http://zhanzhang.baidu.com/sitesubmit/index?sitename='.get_permalink().'"><i class="be be-baidu"></i>暂未收录</a></span>';
</p><p>
}
</p><p>
可以下载下方的懒人包上传至Begin主题目录进行覆盖。
</p><p>
https://www.520yxl.cn/post-570.html
</p><p>
其他主题使用方法
</p><p>
把下方的代码放在文章页面里就可以了,每个主题的文章页面命名不一样,你们找找看吧。
</p><p>
<?php
</p><p>
//文章百度收录判断
</p><p>
$url = get_permalink();
</p><p>
$result = file_get_contents("https://www.520yxl.cn/api/baidu.php?domain=".$url);//此处的api接口连接可以换成自己的
</p><p>
$arr=json_decode($result,true);
</p><p>
if ($arr['code']==200) {
</p><p>
echo '<span><a target="_blank" title="点击查看" rel="external nofollow" href="http://www.baidu.com/s?wd='.get_the_title().'&tn=bds&cl=3&ct=2097152&si=' . $_SERVER['SERVER_NAME']. '&s=on"></i>已收录</a></span>';
</p><p>
} else {
</p><p>
echo '<span><a rel="external nofollow" title="一键提交给百度" target="_blank" href="http://zhanzhang.baidu.com/sitesubmit/index?sitename='.get_permalink().'">暂未收录</a></span>';
</p><p>
} ?>
</p><p>
?
</p> |
|