您的足迹:首页 > 博客技巧 >解决emlog百度链接自动推送重复提交问题

解决emlog百度链接自动推送重复提交问题

现在百度和360相继推出了链接自动推送代码,今天刚好在boke112导航看到《优化解决百度自动推送和360自动收录JS重复推送问题》这篇帖子,真的像他说的那样,百度还是360的这个JS工具都算是半产品,都没有考虑到重复推送问题,他的这篇帖子主要解决了wordpress程序重复推送的问题,我在他的基础上做了些修改运用到emlog程序中,测试可用分享给大家。

我是在之前的判断百度是否收录的基础上修改的,方法如下:

1.找到主题的module.php文件,在文件底部添加如下代码

<?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 logurl($id){$url=Url::log($id);
if(baidu($url)==1){echo "<a rel=\"external nofollow\" title=\"本文已被百度收录\" target=\"_blank\" href=\"http://www.baidu.com/s?wd=$url\">本文已被百度收录!</a>";
}else{echo "<a>本文已提交百度!</a><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>";}}
?>
2.找到文章页面文件echo_log.php,在合适的位置添加以下代码:
<?php echo logurl($logid);?>
看看实际果:

1.已收录文章的显示效果,且源码里没有推送代码,避免了重复推送

2.未收录文章的显示效果,源码里就会有自动推送代码,更快的被收录

本文作者:王商   文章标题:解决emlog百度链接自动推送重复提交问题
本文地址:http://ws234.com/post-368.html     本文已被百度收录!
版权说明:若无注明,本文皆为“王商博客”原创,转载请保留文章出处。

相关推荐

发表评论

路人甲 表情

网友评论(3)

有WordPress的嘛
吾爱资源网 6个月前 (2016-08-03) 回复
确实不错
benen005 6个月前 (2016-07-20) 回复
你们网站上的谷歌广告是怎么弄上的,我的为什么是白屏!
健康养生常识 6个月前 (2016-07-19) 回复