Skip to content

stamsify/nuxt-facebook-pixel-module

 
 

Repository files navigation

nuxt-fb-pixel-module

npm (scoped with tag) npm js-standard-style CircleCI

A NuxtJS module thats injects Facebook Pixel code forked from unsupported nuxt-facebook-pixel-module

Table of Contents

Requirements

  • npm or yarn
  • NuxtJS
  • NodeJS

Install

$ npm install --save nuxt-fb-pixel-module
// or
$ yarn add nuxt-fb-pixel-module

Getting Started

Add nuxt-fb-pixel-module to modules section of nuxt.config.js.

{
  modules: [
    // Simple usage
    'nuxt-fb-pixel-module',

    // With options
    ['nuxt-fb-pixel-module', {
      /* module options */
      track: 'PageView',
      pixelId: 'FACEBOOK_PIXEL_ID',
      disabled: false
    }],
 ]
}

or even

{
  modules: [
    'nuxt-fb-pixel-module',
  ],
  facebook: {
    /* module options */
    track: 'PageView',
    pixelId: 'FACEBOOK_PIXEL_ID',
    disabled: false
  },
}

Disabling the pixel (for GDPR)

If you'd like to install the pixel disabled, and enable it later after the user has consented to its use, you can do so by setting disabled: true in the pixel configuration:

{
  modules: [
    'nuxt-fb-pixel-module',
  ],
  facebook: {
    ...
    disabled: true
  },
}

Now, in your component, you can call the following in order to start the pixel and track the current page.

this.$fb.enable()

Module options

List of possible options in the module:

Option Default Required Description
pixelId null true The unique pixel identifier provided by Facebook.
track PageView false Default tracking event.
version 2.0 false Tracking version.
disabled false false Disable the Pixel by default when initialized. Can be enabled later through $fb.enable().

Facebook pixel instance

The tracking pixel instance is available on all vue component instances as $fb. It has the following methods:

Method Purpose Equivalent to
enable() If you had previously set disabled: true in config, enables the pixel and tracks the current page view $fb.init(), $fb.track()
init(pixelId?) Initialises the pixel fbq('init', <options.pixelId>)
track(event, parameters) Sends a track event with optional parameters. It's PageView by default if the event is not defined. fbq('track', <options.track>, parameters)
query(key, value, parameters) Call the underlying fbq instance with anything else. The parameters attribute is optional. fbq(key, value, parameters)

License

MIT License

About

Inject Facebook pixel code

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 97.5%
  • Vue 2.5%