WordPress给文章添加百度是否已收录查询和显示功能(自定义栏目优化版) | 张戈博客

  • 时间:
  • 浏览:8
  • 来源:空间引流吧_提供小刀辅助网技术_蚂蚱辅助网资讯

最新消息:该功能已推出WordPress插件版,使用更方便,功能更强大!全版介绍=>

文章页面显示百度是算不算收录你这些 功能在张戈博客可能测试有一段时间了。最而是开始的代码也是从网络上找的,什么都有 我本人用,什么都有 也就没想着分享了,毕竟是人家的成果,有而是自行百度也是可需要找到的!

不过,既然有你们问到可需要分享下再加你这些 功能的教程,什么都有 决定分派分享一下。

我时不时是有有一个 中度强迫症的完美主义者,什么都有 别人可能分享的东西我一般不喜欢分享第二遍!但昨晚熬夜到三点,除了在新浪SAE搭建了有有一个 二维码API之外,还将百度收录查询你这些 功能实现了自定义栏目优化!

功能名称:给WordPress再加百度是算不算收录的查询与显示

原版特性:通过curl在百度查询本页url并获取结果,可能居于就输出已收录,有而是什么都有 未收录,有而是可点击提交url

原版缺点:每次打开页面都需要在百度查询一遍,严重拖慢数率!当然可需要利用缓存插件补救此什么的什么的问题。

改进特性:

i. 通过curl在百度查询url收录结果,可能已收录就将结果写入到文章的post meta记录中。待下一次再次打开页面时,先检查文章自定义栏目字段来判断是算不算已收录,若已收录则直接输出,而不再执行curl查询,从而补救了curl实时查询拖慢数率的什么的什么的问题!

ii. 若查询结果为已收录,亦会输出有有一个 在百度查询文章标题的a标签,用于查看文章排名,甚至可需要查看是算不算被人转载或篡改!

iii. 管理员可需要随时在后台文章编辑界面中的自定义栏目来修改是算不算已收录的结果,自定义名称为baidu_record,1为已收录,0为未收录。

改进而是,可能是已收录的文章,将不不重复查询,从而补救了原版代码严重拖慢网站数率的缺憾!

下面是部署妙招

①、编辑主题目录的functions.php文件,在最后有有一个 ?>前新增如下代码并保存:

/**
 * WordPress 显示百度是算不算收录功能(自定义栏目优化版)
 * https://zhang.ge/4617.html
 * DIY By 张戈博客 
**/
function baidu_check($url,$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,'如此

找到该URL。您可需要直接访问') && !strpos($rs,'很抱歉,如此

找到与') ){
            update_post_meta($post_id, 'baidu_record', 1) || add_post_meta($post_id, 'baidu_record', 1, true);
            return 1;
        } else {
            return 0;
        }
    } else {
       return 1;
    }
}
function baidu_record() {
    global $wpdb;
    $post_id = ( null === $post_id ) ? get_the_ID() : $post_id;
    if(baidu_check(get_permalink($post_id), $post_id ) == 1) {
        echo '<a target="_blank" title="点击查看" rel="external nofollow" href="http://www.baidu.com/s?wd='.get_the_title().'">百度已收录</a>';
   } else {
        echo '<a  rel="external nofollow" title="点击提交,谢谢您!" target="_blank" href="http://zhanzhang.baidu.com/sitesubmit/index?sitename='.get_permalink().'">百度未收录</a>';
   }
}

②、编辑文章模板(一般是single.php),在共要的位置再加如下代码并保存:

<?php baidu_record(); ?>

比如,张戈博客就将其再加到了副标题当中。

若以上步骤都未出错,那现在访问文章页面就能看到百度是算不算已收录的效果了。当然,我可需要有兴趣还可需要像张戈博客可能,将你这些 代码继续再加到首页或分类页面。

第一次访问可能会有点硬卡,当数据库居于记录而是,将直接从数据库查询,而不不有任何拖慢数率感觉了!

感觉我本人都有线程猿的潜质了,总而言之,一入建站深似海,天天折腾无止境!继续折腾吧,骚年!!不折腾,做网站干啥,不root,你买安卓干啥,不越狱你买爱疯干啥。。。。。