【问题标题】:Triggering Google Analytics on a direct image/pdf view on a web server?在 Web 服务器上的直接图像/pdf 视图上触发 Google Analytics?
【发布时间】:2020-11-07 14:38:54
【问题描述】:

所以基本上我试图在有人直接访问图像或 pdf 时触发谷歌分析中的页面视图,而不是当图像在页面上时。例如https://example.com/i/image.jpg。无论如何我可以做到这一点吗?感谢您的阅读,任何帮助将不胜感激!

【问题讨论】:

    标签: javascript php image pdf google-analytics


    【解决方案1】:

    基于服务器端要求的更新

    如果您想跟踪对无法运行 javascript 的资产(例如图像和文档)的直接点击,没有简单的方法可以做到这一点,而且 GA javascript 库也不可能。当我说直接点击时,我的意思是用户在您的正常 Web 工作流程之外访问资产的位置,例如来自电子邮件、文档、直接下载等的链接。

    它可以完成,但可能需要很多我无法在这里回答的设置(主要是由于对您的技术堆栈一无所知),但我会提高水平,以便您可以查找更具体的答案如果你需要,给你一个指导。

    更简单的方法是根本不使用 GA,而只是使用服务器日志来查找正在提供哪些资产以及从何处请求它们。

    如果您需要通过服务器端请求在 GA 中显示流量,您将需要 Google Analytics "Measurement protocol",这只是 GA 用于将数据发送到其服务器的 api。您还需要在请求和资产之间建立一个流程,这并不简单,尤其是当您尝试向在网络上使用的现有资产添加跟踪时。

    问题是处理程序需要被拦截,所以你正在做这样的事情:-

    1. 用户请求您的图片“https://example.com/i/image.jpg”
    2. 您有一个 Http 处理程序,可以检测对图像资产的所有请求(例如)。这是如何完成的完全取决于您的框架(例如 php、C#、nodejs),并且是相当普遍的做法,但并不总是简单明了,可能需要摆弄您的 Web 服务器(也许,这也可以直接在 Web 项目中处理)所以网络服务器知道通过你的代码而不是直接提供它。
    3. 在调用 GA 测量协议的处理程序代码中,填写您希望在 GA 流量报告中看到的详细信息
    4. 通过在响应中发送图像来完成请求

    另一种看待它的方式是将其视为一个 api 请求,它在将图像作为响应传递之前完成部分工作。这种图像跟踪方法是第 3 方 cookie 的工作原理,以及跟踪电子邮件“打开”的工作原理。

    很抱歉,这是针对您的问题的操作指南,但问题太宽泛,难以准确回答。

    ==================

    使用多种方法,您可以在有人点击元素时触发事件。如何执行此操作取决于您使用的框架、您如何实现标记以及您在页面上使用的是 GTM 还是直接 GA,这还取决于 GA 版本(异步、通用、gtag)。

    使用 Universal Analytics 的最简单方法如下所示

    <a href="/image.jpg" target="_blank"
    
        onclick="ga('send', 'event','Click','Image','Image opened: ' + this.href)"
    
    >View the image</a>
    

    注意事项

    • 使用目标,以便图像或 pdf 将在新窗口中打开。这也将允许事件触发而不会意外被浏览器停止,并且您不需要返回 false 或类似的东西
    • “点击”是类别,“图片”是动作,最后一位是标签 - 这些是任意文本位,可以是您想要的任何内容
    • this.href 正在动态拉取当前图像 src 以在名称中使用
    • 这种方法效率极低,因为您可能需要手动标记很多项目
    • 这种方法会因为内联代码让很多开发者哭泣

    这个问题需要稍微细化一下,因为根据设置有很多不同的方法可以完成。你想要的是一个通用的代码,这是一个包罗万象的代码,这里是使用 jQuery 的东西,它使用事件委托。

    $(document).on("click","a[href*='.pdf'],a[href*='.jpg']",function() {
       ga('send', 'event','Click','Document','Opened: ' + this.href);
    });
    

    这也会让开发者哭泣,因为目前的趋势是远离 jQuery(而且它有点效率)。

    但希望你能明白要点

    【讨论】:

    • 您好,感谢您的回复!所以我一直面临的问题更多的是当有人直接访问图像时,比如说他们在聊天中收到了指向图像的直接链接,或者我无法加载的另一个人(不是我)的电子邮件首先是 HTML 页面。
    • 修改了我的答案。基本上是“没有但是”
    猜你喜欢
    • 2011-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-19
    • 1970-01-01
    • 1970-01-01
    • 2012-08-02
    相关资源
    最近更新 更多