rsnext/examples/with-google-tag-manager/README.md
Steven 9f9214abe5
Updated create-next-app docs to include pnpm usage (#35755)
This PR updates the docs and examples for `create-next-app` to include pnpm usage.

The following script was used to update every example README:

```js
const fs = require('fs')
const examples = fs.readdirSync('./examples')

for (let example of examples) {
    const filename = `./examples/${example}/README.md`
    const markdown = fs.readFileSync(filename, 'utf8')
    const regex = new RegExp(`^yarn create next-app --example (.*)$`, 'gm')
    const output = markdown.replace(regex, (yarn, group) => {
        const pnpm = `pnpm create next-app -- --example ${group}`
        return `${yarn}\n# or\n${pnpm}`
    })
    fs.writeFileSync(filename, output)
}
```
2022-03-30 21:03:21 +00:00

1.7 KiB

Example app using Google Tag Manager

This example shows how to use Next.js along with Google Tag Manager. pages/_document.js is used to inject base code. pages/_app.js is used to track route changes and send page views to Google Tag Manager.

Deploy your own

Deploy the example using Vercel:

Deploy with Vercel

How to use

Execute create-next-app with npm or Yarn to bootstrap the example:

npx create-next-app --example with-google-tag-manager with-google-tag-manager-app
# or
yarn create next-app --example with-google-tag-manager with-google-tag-manager-app
# or
pnpm create next-app -- --example with-google-tag-manager with-google-tag-manager-app

Next, copy the .env.local.example file in this directory to .env.local (which will be ignored by Git):

cp .env.local.example .env.local

Set the NEXT_PUBLIC_GOOGLE_TAG_MANAGER_ID variable in .env.local to match your Google Tag Manager ID.

Deploy it to the cloud with Vercel (Documentation).