php - 如何在 Google 分析中测量 Greasemonkey 下载量

标签 php html google-analytics greasemonkey

我有一个油脂猴 (.user.js) 文件,人们可以在我的网页上下载。我想跟踪它被下载了多少次。我可以使用 onclick="pageTracker._trackPageview('/file_name.file_extension')但该文件可能更频繁地直接下载,而不是通过“官方链接”。

我该如何设置? (不必通过谷歌分析,定制解决方案同样好)
有一些限制,解决方案必须像这样工作:

  • Firefox:询问用户是否要安装脚本。
  • Opera: 点击后直接看到文件(需要启用右键保存)
  • Chrome:我不确定它如何与 Chrome 一起使用 :)
  • 最佳答案

    如果您确实想使用 Google Analytics,那么我建议您研究 PHP-GA——一个基于 PHP 的 Google Analytics 库。因此,您将链接到一个 PHP 脚本,该脚本将 View 记录在 Google Analytics 中,然后将文件发送到浏览器。这意味着它将记录每次下载,无论是直接下载还是点击链接。

    这是 Google 代码页面上的一个基本示例。

    use UnitedPrototype\GoogleAnalytics;
    
    // Initilize GA Tracker
    $tracker = new GoogleAnalytics\Tracker('UA-12345678-9', 'example.com');
    
    // Assemble Visitor information
    // (could also get unserialized from database)
    $visitor = new GoogleAnalytics\Visitor();
    $visitor->setIpAddress($_SERVER['REMOTE_ADDR']);
    $visitor->setUserAgent($_SERVER['HTTP_USER_AGENT']);
    $visitor->setScreenResolution('1024x768');
    
    // Assemble Session information
    // (could also get unserialized from PHP session)
    $session = new GoogleAnalytics\Session();
    
    // Assemble Page information
    $page = new GoogleAnalytics\Page('/page.html');
    $page->setTitle('My Page');
    
    // Track page view
    $tracker->trackPageview($page, $session, $visitor);
    

    将此与代码结合起来,通过 PHP 将文件发送到浏览器,如下所示:
    $file = 'file.js';
    header('Content-disposition: attachment; filename='.$file);
    header('Content-type: text/plain');
    header('Expires: 0');
    header('Cache-Control: must-revalidate');
    header('Pragma: public');
    header('Content-Length: ' . filesize($file));
    ob_clean();
    flush();
    readfile($file);
    exit;
    

    关于php - 如何在 Google 分析中测量 Greasemonkey 下载量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12568252/

    相关文章:

    google-apps-script - Google Analytics(分析)电子表格插件中特定URI的综合浏览量

    google-analytics - 测量协议(protocol) 用途

    php - 如何更改 "post comment"按钮上的文本?

    javascript - 在MySQL数据库表填充的php中对分页表进行排序

    php - 用户 www-data 的连接访问被拒绝

    php - 代码点火器 : Difference Between two time stamps

    javascript - 修复验证表单中的输入错误和延续问题

    javascript - 动态更改语言时,是否应该更新 HTML lang 属性?

    html - 不同位置的相同div? (CSS)

    drupal-7 - Google Analytics 未显示所有订单跟踪