如何扩展Blogengine.Net以收集访问者的统计信息?

时间:2020-03-06 14:27:50  来源:igfitidea点击:

我爱BlogEngine。但是据我所知,它并没有收集有关我希望看到的访问者的标准信息(引荐来源,浏览器类型等)。

当我以管理员身份登录时,我有一个名为" Referrer"的菜单项。我可以选择一个工作日,然后向我显示1或者2行

" google.com 4命中"," itmaskinen.se 6命中"等等,但这不是我想知道的,我想知道我的访客来自哪里,国家/地区,IP(如果可能),多少访客等等。

如果你们中的某个人熟悉Blogengine.Net,并且可以将我的正确代码指向正确的方向,或者如果我们知道任何可以为我做到的访客统计信息扩展名,我将非常高兴要知道。我更喜欢扩展,因为如果我自己对BlogEngine进行更改,则它可能会破坏我安装的以后的更新。

Blogengine.Net是.Net制作的博客软件,可在以下位置找到:http://www.dotnetblogengine.net/

是的,我更喜欢在这里提出这个问题,而不是在Blogengine.Net论坛中,你知道为什么。 ;)

(任何人,请随时在这篇文章中编辑我的(不良)英语,然后删除此句子)

解决方案

这不是扩展,而是我用来收集所有blogengine.net数据的工具,应该可以安全升级。

登录Blogengine.NET管理员屏幕时,可以转到"设置>定制代码>跟踪脚本",我们可以在此处放置http://www.google.com/analytics/日志记录脚本。 Google Analytics(分析)提供了我们想要的所有引荐来源网址,浏览器类型等内容。最好的是,然后我们可以选择为其他站点创建其他帐户。

我同时使用Google Analytics(分析)和StatCounter来跟踪访问者统计信息。我发现每个人都提供了其他人没有的有用信息。而且它们在一定程度上都是免费的。

我将其javascript代码放入自定义BE.Net皮肤的site.master文件中。

对于Google Analytics(分析),我更进一步,并将经过身份验证的用户名作为自定义变量传递。这样,我就可以将用户名与统计信息进行匹配。为此,我们可以在GA pageTracker上使用_setVar javascript方法,如下所示:

<script type="text/javascript">
    var pageTracker = _gat._getTracker("UA-129049-25");
    var userDefinedValue = '<%= System.Web.Security.Membership.GetUser() != null ? System.Web.Security.Membership.GetUser().UserName : "" %>';
    pageTracker._setVar(userDefinedValue);
    pageTracker._trackPageview();
</script>

有人注意到我们想念所有来自RSS读者的热门歌曲吗? Syndication.axd无法运行分析javascript。因此,我们错过了统计数据中的绝大多数观众。而且,我们很高兴地认为,这些访问者并不是特别重要的访问者。

在大多数情况下,Google Analytics(分析)就可以了。这完全取决于我们想要多少数据。例如,如果我们想记下IP地址并解析它们以获取域名,并突出显示我们工作所在公司的同事对我们博客的所有访问,则必须编写一些自定义代码你自己。但是,使用ASP.NET可以很容易地实现这些事情,这是非常原始的。