百度收录wordpress网站收录为什么是 ?p=xx 的格式

作者

最近一个朋友的网站出现了一个小的问题, 百度收录的格式,不是伪静态后的格式,是wordpress默认的格式。 经过排查后,原因是没有正确的使用了百度的js推送代码

使用伪静态后的代码一般是 .html 结尾的。比如可能是

https://www.liuhaolin.com/xxx/831.html

不应该是这样的的形式

https://www.liuhaolin.com/?p=831

具体的原因

添加百度统计代码后,进行了预览操作(查看一下文章的最终展示效果),这个时候,百度js推送的代码就起作用了。所以必须在进行预览的时候,不能显示百度的统计代码。

修改的方法

进行预览的操作的时候,说明用户已经登陆了,所有,仅仅对没有登陆的用显示这段js即可。

<?php if(!is_user_logged_in()): ?>
  <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 endif; ?>

使用上面的代码,先判断一下用户是否登陆,没有登陆再输出自动推送的代码。

回复

邮箱地址不会被公开。