我是否需要在我的PHP代码中放入_gaq.push(['_ trackEvent'.....在<script>标签内?</script>

时间:2011-04-28 14:13:31

标签: php javascript asynchronous google-analytics event-tracking

我想从我的PHP脚本中将一些事件跟踪推送到我的Google Analytics(分析)帐户。我在我的所有网站PHP文件中都包含了一个外部PHP文件,该文件在我的标题脚本中包含了Google分析代码 -

header.php:

<?php
include_once("analytics_script.php");
...
?>

index.php:

<?php
include("header.php");
//When i want to track an event from this script -
_gaq.push(['_trackEvent', 'Category', 'Action', 'Label']);
?>

analytics_script.php:

<script type="text/javascript">
   var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-********-**']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script>

所以在index.php中只会使用_gaq.push跟踪事件,或者我需要在javascript标签中包装行,如 -

<script>_gaq.push(... </script>

感谢

1 个答案:

答案 0 :(得分:3)

除非包含的header.php文件在仍然有一个打开的脚本标记(我认真推荐反对)时结束,否则你需要将它包装在<script>标记中。否则它只会在用户屏幕上显示为文本。

编辑:Koraktor是对的。我完全错过了你不关闭你的PHP标签。