【问题标题】:Gatsbyjs + Google analytics - tracking custom events?Gatsbyjs + Google 分析 - 跟踪自定义事件?
【发布时间】:2018-10-29 22:12:03
【问题描述】:

是否有可能使用 gatsby 和 google 分析来跟踪自定义事件?

【问题讨论】:

  • 您能否详细说明您要实现的目标?
  • 一个简单的例子是 - 我有一个条目列表,每个条目都附有一些“算法”。当用户选择一个条目时,我想跟踪算法以了解哪个是最常用的

标签: javascript reactjs google-analytics event-handling gatsby


【解决方案1】:

我已将 ReactGA 与 Gatsby 结合使用并取得了不错的成功。

对于基本的事件跟踪 - 例如记录点击的链接 - 它非常易于使用。您在访问ReactGA.event 的组件中创建一个日志记录函数,然后使用onClick 在渲染函数中调用它。

记录 PDF 下载的示例组件:

import React from 'react'
import Link from 'gatsby-link'
import ReactGA from 'react-ga'

import logo from './logo.png'
import financials from './Annual_Report_Financials_2017_FINAL.pdf'

class LoggingDownload extends React.Component {
  logger() {
    // Detect each click of the financial PDF
    ReactGA.event({
      category: 'Financial Download',
      action: 'User clicked link to view financials'
    })
  }

  render() {
    return (
      <div>
        <nav className="nav-container">
          <Link to="/locations">
            <img className="logo" src={logo} alt="Logo" />
          </Link>
          <ul className="nav-item-container">
            <li className="nav-item">
              <a href="/shortsignup/" target="_blank">Join Us</a>
            </li>
            <li className="nav-item">
              <a href={financials} onClick={this.logger} target="_blank" id="financials-pdf">Financials</a>
            </li>
          </ul>
        </nav>
      </div>
    )
  }
}
export default LoggingDownload

还有大量用例 - 查看 ReactGA 文档。

另外:不要忘记在您的 gatsby-config.js 文件中包含 ggatsby-plugin-google-analytics 作为使上述内容正常工作的依赖项:

{
  resolve: `gatsby-plugin-google-analytics`,
  options: {
    trackingId: "UA-#########-##",
    // Puts tracking script in the head instead of the body
    head: false,
    // Setting this parameter is optional
    respectDNT: true,
  }
}

【讨论】:

  • 很好,谢谢。所以基本上 gatsby 插件接管了分析设置,然后 ReactGA 无需任何设置即可工作?
  • gatsby-plugin-google-analytics 会自动将 GA 插入网站正文的末尾,因此可以轻松跟踪基本网页浏览量。如果您需要事件跟踪、出站链接,我使用了react-ga。如果您想要一个非常干净的依赖链,我认为您可以在没有 gatsby-plugin-google-analytics 的情况下设置浏览量跟踪。
【解决方案2】:

对于仍然想知道的任何人,gatsby-plugin-google-analytics不是我会为谷歌分析采取的方法。您正在寻找的是gatsby-plugin-google-gtag。该插件自动发送浏览量,并在窗口中提供gtag 事件。

window.gtag("event", "click", { ...data })

Google 还为仍在使用 gatsby-plugin-google-analytics 的任何人提供了迁移文档,您可以找到 here(链接也在 gatsby 文档中)。

【讨论】:

  • 这个看起来更好,每次我需要添加分析以确保gatsby-plugin-google-analytics 不是我想要的。它甚至没有说明分析只在生产中起作用,而gtag 用大的NOTE 措辞明确定义了这一点。到目前为止喜欢它
【解决方案3】:

您可以使用提供的 OutboundLink 进行简单的链接跟踪:

import React from "react"
import { OutboundLink } from "gatsby-plugin-google-gtag"

export default () => (
  <div>
    <OutboundLink href="https://www.gatsbyjs.org/packages/gatsby-plugin-google-gtag/">
      Visit the Google Global Site Tag plugin page!
    </OutboundLink>
  </div>
)

【讨论】:

  • 在分析仪表板中的何处查找此 OutboundLink?我的意思是我可以在仪表板中看到页面视图,但是那里没有定义点击事件或链接点击,我在哪里可以检查这些?
  • 遇到了同样的问题。也许默认的 GA4 只允许实时或最近 30 分钟查看出站事件。可能需要手动执行 gtag 推送并执行自定义事件。
猜你喜欢
  • 1970-01-01
  • 2016-04-24
  • 1970-01-01
  • 1970-01-01
  • 2013-09-13
  • 1970-01-01
  • 1970-01-01
  • 2012-03-07
相关资源
最近更新 更多