EMLOG扩展 - 百度自动推送JS优化,规避错误、重复推送、判断文章是否收录

:关注SEO、关注收录的站长,应该都知道百度搜索提供了一段自动推送的js代码,可将任意网页推送到搜索引擎,加快收录。但是,这段代码并不是简单的增加到网页中万事大吉了!百度埋坑技术,你我都懂的!本文主要分享埋坑之自动推送JS代码的优化...

功能介绍:

根据以前有人发的判断文章是否收录的功能。具体作者忘了。拓展出展示js推送代码

优点:

1.判断文章是否收录,来进行展示。

2.避免重复推送,防止占用推送额度。

3.防止因推送频繁造成的负面影响

缺点:

操作较繁琐,无基础者建议不要操作!!!

<?php
/* EMLOG百度搜索自动推送、主动收录JS优化 By AE博客
 * 文章地址:http://www.aeink.com/210.html
 * 转载请保留出处,谢谢合作!
 */
function bdPushData($id){
 $url=Url::log($id);
 if(baidu($url)==1){
 echo '<!--本文已收录,不输出推送代码-->';
 }else{
    	echo "<script>
(function(){
    var bp = document.createElement('script');
    var curProtocol = window.location.protocol.split(':')[0];
    if (curProtocol === 'https') {
        bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';        
    } else {
        bp.src = 'http://push.zhanzhang.baidu.com/push.js';
        }
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(bp, s);
})();
</script>";
    }
}
?>
<?php
/*
 * 判断内容页是否百度收录,并且以博主和或者理员身份访问博客文章时自动向百度提交未收录的文章
 *
 */
function baidu($url){
 $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,'没有找到')){
     return 1;
   }
 else{
     return 0;
  }   
     }
  function checkbaidu($id){
  $url=Url::log($id);
  if(baidu($url)==1){
   echo "百度已收录";
  } else {
   if (ROLE == 'admin' || ROLE == 'writer') {
    $urls = array($url,);
 $api = 'http://data.zz.baidu.com/urls?site=www.aeink.com&token=DbHncVZJcV3FzstQ';
 $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);
 echo '已自动提交给度娘';
   }
     echo "<a style=\"color:red;\" rel=\"external nofollow\" title=\"点击提交收录\" target=\"_blank\" href=\"http://zhanzhang.baidu.com/sitesubmit/index?sitename=$url\">坐等收录</a>";
  }
 }
?>

如上PHP代码,添加到主题module.php即可。当页面未被百度收录,将会输出百度自动推送js代码,否则不会输出。

在模板的footer.php文件中</html>前调用<?php echo bdPushData($logid);?>即可。

在模板的echo_log.php文件中调用<?php echo checkbaidu($logid);?>即可。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏逆向技术

病毒分析第一讲,分析病毒注意事项,以及简单分析主要功能

        病毒分析第一讲,分析病毒注意事项,以及简单分析主要功能 一丶认识木马和病毒的区别 木马和病毒是两个不一样的,有人会把木马认为是病毒,但其实不是 ...

23960
来自专栏逸鹏说道

CSharp for Jupyter Notebook

之前说有机会就说下Linux下如何搭建C#版的交互编程,今天写篇文章还债^_^ Win下比较简单,可以自己看官方文档https://github.com/zab...

15960
来自专栏禹都一只猫博客

ubuntu16.04国内apt源以及官方源

3K30
来自专栏FreeBuf

CVE-2018-8174 “双杀”0day漏洞复现

最近360核心安全事业部高级威胁应对团队在全球范围内率先监控到了一例使用0day漏洞的APT攻击,捕获到了全球首例利用浏览器0day漏洞的新型Office文档攻...

27800
来自专栏更流畅、简洁的软件开发方式

【自然框架】——自然框架的命名空间

  为什么要有命名空间?类多了不便于管理,把他们给他分个类整理一下,便于管理。   那么命名空间就有了两个使命,分类和标识。其实标识也是一种分类。 我们打开Re...

24360
来自专栏Linyb极客之路

工作流引擎之activiti中的排他网关和并行网关

排他网关.png

30210
来自专栏tiane12

无需使用UC tools直接重置Ucenter创始人密码

44130
来自专栏信安之路

轻松理解什么是 C&C 服务器

大家经常在看恶意软件分析的文章或者关于僵尸网络的报道时经常会看到有关 C&C 服务器的字眼,但是这个 C&C 服务器是什么呢?今天的主题就是带领大家轻松理解什么...

87910
来自专栏walterlv - 吕毅的博客

Git 更安全的强制推送,--force-with-lease

发布于 2018-05-07 11:16 更新于 2018-09...

24620
来自专栏Jerry的SAP技术分享

Internationalization(i18n) support in SAP CRM,UI5 and Hybris

i18n(其来源是英文单词 internationalization的首末字符i和n,18为中间的字符数)是“国际化”的简称。对程序来说,在不修改内部代码的情况...

35540

扫码关注云+社区

领取腾讯云代金券