WordPress自动检测文章是否被百度收录 - 无插件实现

我们经常看到有些网友的博客标题下面有一个小标签,"百度已收录"、"百度未收录"。这样的功能到底是如何实现的呢?如果说要有用确实也没有用,但是如果有些朋友个人博客需要加上这个功能的还是可以实现的。如果有需要用插件就简单用插件实现,这里用无插件实现。

第一、代码部分

function baidu_check($url){
global $wpdb;
$post_id = ( null === $post_id ) ? get_the_ID() : $post_id;
$baidu_record = get_post_meta($post_id,'baidu_record',true);
if( $baidu_record != 1){
$url='http://www.baidu.com/s?wd='.$url;
$curl=curl_init();
curl_setopt($curl,CURLOPT_URL,$url);
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
$rs=curl_exec($curl);
curl_close($curl);
if(!strpos($rs,'没有找到')){
if( $baidu_record == 0){
update_post_meta($post_id, 'baidu_record', 1);
} else {
add_post_meta($post_id, 'baidu_record', 1, true);
}
return 1;
} else {
if( $baidu_record == false){
add_post_meta($post_id, 'baidu_record', 0, true);
}
return 0;
}
} else {
return 1;
}
}
function baidu_record() {
if(baidu_check(get_permalink()) == 1) {
echo '<a target="_blank" title="点击查看" rel="external nofollow" href="http://www.baidu.com/s?wd='.get_the_title().'">百度已收录</a>';
} else {
echo '<a style="color:red;" rel="external nofollow" title="一键帮忙提交给百度,谢谢您!" target="_blank" href="http://zhanzhang.baidu.com/sitesubmit/index?sitename='.get_permalink().'">百度未收录</a>';
}
}

将代码添加到当前主题Functions.php文件中。

第二、调用显示

<?php baidu_record(); ?>

在需要显示的当前文章页面single.php标题下面就可以看到。

本文出处:老蒋部落 » WordPress自动检测文章是否被百度收录 - 无插件实现 | 欢迎分享( 公众号:站长事儿 )