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

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 条评论
登录 后参与评论

相关文章

  • emlog判断文章有没有被百度收录的方法

    用户1456630
  • php接口源码获取百度网站收录数量

    用户1456630
  • php怎么统计文章字数?

    用户1456630
  • 带你了解什么是Push消息推送

    而Push消息是这么多种类型之中非常重要和常用的一种类型,最近也希望针对Push推送做些新的尝试,于是去学习学习些Push消息运营的技巧。

    Java3y
  • 浅谈iOS和Android后台实时消息推送的原理和区别

    用户1263954
  • 基于APNs最新HTTP/2接口实现iOS的高性能消息推送(服务端篇)

    本文原作者:liuyan731,原文地址:liuyan731.github.io/2017/12/05/How-To-Use-APNs-Pushy,内容有改动。

    JackJiang
  • 前端模块化开发--React框架(二):脚手架&&网络请求框架

    MiChong
  • 几十行代码批量下载高清壁纸 爬虫入门实战

    电影桌面背景时间长了也会腻,换背景的话一般去网上下载又需要挑来挑去,一页一页的翻很烦人,能不能一次展示很多图片呢?省的一页一页看。比较简单的方法就是把图片存到本...

    啤酒单恋小龙虾
  • 浙江发展大数据产业的优势(图)

    “ 浙江拥有4400多个实体商品交易市场和全国最大的B2B、B2C、C2C交易平台,在全国行业网站百强中的占比高达PC68台/百户移动电话133.82部/百人浙...

    钱塘数据
  • PyQt5 技巧篇-解决相对路径无法加载图片问题,styleSheet通过"相对"路径加载图片,python获取当前运行文件的绝对路径。

    styleSheet用相对路径我是怎么试都不管用。加了:/在前面也不管用。 好像跟pyqt5自身的绘图机制有关,父类子类啥的。以后有空可以研究下。

    小蓝枣

扫码关注云+社区

领取腾讯云代金券