@frontity/google-tag-manager-analytics

Analytics package to use Google Tag Manager with Frontity

Usage no npm install needed!

<script type="module">
  import frontityGoogleTagManagerAnalytics from 'https://cdn.skypack.dev/@frontity/google-tag-manager-analytics';
</script>

README

@frontity/google-tag-manager-analytics

Version npm License: Apache--2.0

Analytics package to use Google Tag Manager with Frontity

Install

npm i @frontity/google-tag-manager-analytics

Settings

The namespace for this package is googleTagManagerAnalytics

Every Google Tag Manager account has a Container ID. To connect the package with a specific account (or accounts) we can set the following properties in the frontity.settings.js:

  • state.googleTagManagerAnalytics.containerId: to specify just one container ID
  • state.googleTagManagerAnalytics.containerIds: to specify a list of container ID's
export default {
  packages: [
    {
      name: "@frontity/google-tag-manager-analytics",
      state: {
        googleTagManagerAnalytics: {
          containerId: "GTM-BCDFGHJ",
        },
      },
    },
  ],
};
export default {
  packages: [
    {
      name: "@frontity/google-tag-manager-analytics",
      state: {
        googleTagManagerAnalytics: {
          containerIds: ["GTM-BCDFGHJ", "GTM-HJSFDUF"],
        },
      },
    },
  ],
};

Usage

This @frontity/google-tag-manager-analytics package can co-exist with some other analytics packages. Once we have properly installed and configured these analytics packages, their actions will be centralized by the analytics namespace

  • actions.analytics.pageview() will take into account settings in state.analytics.pageviews
  • actions.analytics.event() will take into account settings in state.analytics.events

Read More info about how to use Analytic packages in the docs

actions.analytics.pageview

If @frontity/google-tag-manager-analytics is configured configured and enabled for pageviews in state.analytics.pageviews, every time a link changes (or every time action.router.set(link) is launched) a tracking for that page will be sent to Google Tag Manager.

actions.analytics.event

If @frontity/google-tag-manager-analytics is configured and enabled for events in state.analytics.events, every time you call the method actions.analytics.event() from any of your React components, the proper tracking info will be sent to Google Tag Manager.

The actions.analytics.event() must receive an event object with the following properties.

Name Type Default Required Description
name string - true The value of this property is mapped to the event field of the object sent to GTM
payload Object - true Event payload.

You can add any info you want in the payload object.

These values will be transfomed (by this package) into the proper format before sending the data to Google Tag Manager


Feature Discussions

Feature Discussions about Frontity are public. You can join the discussions, vote for those you're interested in or create new ones.

These are the ones related to this package: https://community.frontity.org/tags/c/feature-discussions/33/google-tag-manager

Changelog

Have a look at the latest updates of this package in the CHANGELOG


ยป Open Source Community

Community Forum Topics Twitter: frontity Frontity Github Stars

Frontity has a number of different channels at your disposal where you can find out more information about the project, join in discussions about it, and also get involved:

  • ๐Ÿ“– Docs: our primary documentation resource - this is the place to learn how to build amazing sites with Frontity.
  • ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ Community forum: join Frontity's forum and ask questions, share your knowledge, give feedback and meet other cool Frontity people. We'd also love to know about what you're building with Frontity, so please do swing by the forum and tell us about your projects.
  • ๐Ÿž Contribute: Frontity uses GitHub for bugs and pull requests. See our Contributing section to find out how you can help develop Frontity, or improve this documentation.
  • ๐Ÿ—ฃ Social media: interact with other Frontity users. Reach out to the Frontity team on Twitter. Mention us in your tweets about Frontity and what you're building by using @frontity.
  • ๐Ÿ’Œ Newsletter: do you want to receive the latest news about Frontity and find out as soon as there's an update to the framework? Subscribe to our newsletter.

ยป Get involved ๐Ÿค—

GitHub issues by-label

Got questions or feedback about Frontity? We'd love to hear from you in our community forum.

Frontity also welcomes contributions. There are many ways to support the project! If you don't know where to start then this guide might help: How to contribute?.

If you would like to start contributing to the code please open a pull request to address one of our good first issues.