多域名指向一个网站添加百度统计代码的方法

2022年04月4日

原创内容,转载请注明出处:https://www.myzhenai.com.cn/post/4074.html

因为我有三个域名需要添加百度统计,这三个域名又各有两个子域名指向同一个网站,在这块上如果只是使用一个统计代码是不合适的,所以需要根据域名来指定不同的统计代码。

百度统计中网站的建立或代码的申请在这里我就不解释了,在这里只是分别对Wordpress和Typecho中的添加思路。这里需要用到两块php代码。

            <?php
            function baidu_tongji()
            {
                if (strpos($_SERVER["HTTP_HOST"], "mangshe.python.hn.cn") !== false) {
                    $code = <<<eof
<script>
var _hmt = _hmt || [];
(function() {
  var hm = document.createElement("script");
  hm.src = "https://hm.baidu.com/hm.js?a12a";
  var s = document.getElementsByTagName("script")[0]; 
  s.parentNode.insertBefore(hm, s);
})();
</script>
eof;
                } else {
                    $code = <<<eof
<script>
var _hmt = _hmt || [];
(function() {
  var hm = document.createElement("script");
  hm.src = "https://hm.baidu.com/hm.js?20c2";
  var s = document.getElementsByTagName("script")[0]; 
  s.parentNode.insertBefore(hm, s);
})();
</script>
eof;
                }
                return $code;
            }
            function baidu_tongji_url()
            {
                if (strpos($_SERVER["HTTP_HOST"], "mangshe.python.hn.cn") !== false) {
                    $code = "https://tongji.baidu.com/web/10000445294/trend/latest?siteId=1";
                } else {
                    $code = "https://tongji.baidu.com/web/10000445294/trend/latest?siteId=17";
                }
                return $code;
            }
            ?>
<?php echo baidu_tongji(); ?><a target="_blank" href="<?php echo baidu_tongji_url(); ?>">网站统计</a>

然后将这两段代码放到footer.php文件中的相应位置就可以了。

以上这些代码是

WordPress博客中的,Typecho中的有些麻烦,因为我使用的主题文件中的代码有些繁锁,所以我还是在主题作者的帮助下才解决问题的。

<?php
            function baidu_tongji()
            {
                if (strpos($_SERVER["HTTP_HOST"], "mangshe.python.hn.cn") !== false) {
                    $code = <<<eof
<script>
var _hmt = _hmt || [];
(function() {
  var hm = document.createElement("script");
  hm.src = "https://hm.baidu.com/hm.js?a12ae407dff107bc931985ef2ef8862c";
  var s = document.getElementsByTagName("script")[0];
  s.parentNode.insertBefore(hm, s);
})();
</script>
eof;
                } else {
                    $code = <<<eof
<script>
var _hmt = _hmt || [];
(function() {
  var hm = document.createElement("script");
  hm.src = "https://hm.baidu.com/hm.js?20c2cedad9985bb59f7537770f3e98b1";
  var s = document.getElementsByTagName("script")[0];
  s.parentNode.insertBefore(hm, s);
})();
</script>
eof;
                }
                return $code;
            }
?>

先自定义一个输出统计代码的函数,然后输出页面地址的判断放到版权变量中了。

        function baidu_tongji_url()
        {
            if (strpos($_SERVER["HTTP_HOST"], "mangshe.python.hn.cn") !== false) {
                $code = "https://tongji.baidu.com/web/10000445294/trend/latest?siteId=17814332";
            } else {
                $code = "https://tongji.baidu.com/web/10000445294/trend/latest?siteId=17814330";
            }
            return $code;
        }
$copyright = '<p>Copyright &copy; '. date('Y') .' <a href="'. Mirages::$options->siteUrl .'">'. Mirages::$options->title .'</a> • <a target="_blank" href="' .  baidu_tongji_url() . '">网站统计</a>'; if (!Device::isPhone()) {$theme = "";}$theme = (Device::isPhone() ? '': 'Powered by <a href="http://typecho.org" target="_blank">Typecho</a> • ') . 'Theme <a href="https://get233.com/archives/mirages-intro.html" target="_blank">Mirages</a>';
• <a target="_blank" href="' . baidu_tongji_url() . '">网站统计</a>

这一行是添加的,显示网站统计地址的。

<?php echo baidu_tongji(); ?>

这一行就是输出统计代码的模块,放在上边那一段代码后边的?>后边空闲位置。


sicnature ---------------------------------------------------------------------
I P 地 址: 18.119.113.79
区 域 位 置: 美国马萨诸塞
系 统 信 息: 美国
Original content, please indicate the source:
同福客栈论坛 | 蟒蛇科普海南乡情论坛 | JiaYu Blog
sicnature ---------------------------------------------------------------------
Welcome to reprint. Please indicate the source https://myzhenai.com/post/4074.html

1 评论

  • 海南胡说 2022年04月5日在12:09 上午

    如果在百度统计后台检测代码安装状态时提示 “页面代码安装状态:referrer被禁用”。
    可以将baidu_tongji() 的调用放到 header.php 里的 之前。
    让百度统计代码先加载,就可以解决两者的并存问题了

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注