Description
{eac}MetaPixel is an {eac}Doojigger extension which installs the Facebook/Meta Pixel and enables tracking of PageView, Search, ViewContent, AddToCart, InitiateCheckout, AddPaymentInfo, and Purchase events when using WooCommerce.
What is the Meta Pixel?
The Meta Pixel is a piece of code on your website that can help you better understand the effectiveness of your advertising and the actions people take on your site, like visiting a page or adding an item to their cart. You’ll also be able to see when customers took an action after seeing your ad on Facebook and Instagram, which can help you with retargeting. And when you use the Conversions API alongside the Pixel, it creates a more reliable connection that helps the delivery system decrease your costs.
See Meta Pixel
To retrieve your pixel id, Go to Meta Events Manager → Data Sources → Your Pixel → Settings → Pixel ID. Copy your pixel id and paste it into the "Facebook Pixel ID" field of this extension's settings.
Pixel Events
- Page Views
- PageView events may occur on all pages or only pages that don't trigger another event.
- Site Search
- Search result pages.
- Content View (archives)
- Archive (category and tag) pages.
- Content View (products)
- Product pages.
- Content View (commerce)
- Product category, tag, and shop pages.
- Content View (cart)
- The shopping cart page.
- Add To Cart
- Buttons and links that add an item to the cart.
- Initiate Checkout
- The checkout page.
- Add Payment Info
- Billing information on checkout page.
- Purchase Completed
- Purchase confirmation page. (a 'Purchase' event is registered as a 'Subscription' if the order includes a subscription).
Server Based Conversion API
Support for the Meta Conversion API to track events directly from your server is included. When using the Conversion API (CAPI), additional information will be passed through the purchase api, including:
- Customer name (hashed, non-decipherable)
- Customer email address (hashed, non-decipherable)
- Customer phone number (hashed, non-decipherable)
- Customer billing address (hashed, non-decipherable)
- Order/cart details (item, quantity, price)
To enable the server conversion api, Go to Meta Events Manager → Data Sources → Your Pixel → Settings. Scroll to Conversions API → Set up manually.
Click the "Generate access token" link under the "Get Started" button. Copy the access token and paste it into the "Server Access Token" field of this extension's settings.
Note: Server events require a Meta Business Manager.
In most cases, the CAPI event will be sent before the Pixel event. When the page is requested, the Pixel code is added to the page at the same time the CAPI event is sent, then when the page loads in the browser, the pixel fires. If the page is cached, the CAPI event may not be sent. Typically, e-commerce pages are not cached.
Advantage+ Catalog Ads
The Content View (products), Add To Cart, Initiate Checkout, and Purchase Completed events meet the requirements for Advantage+ catalog ads.
- content_type : 'product'.
- content_ids : array of product skus.
Domain Verification
You may, optionally, add the Facebook Brand Safety domain verification meta tag to your home page.
Go to Meta Business Settings → Brand Safety → Domains → Your Domain → Add a meta-tag, and copy just the content= string.
In this example:
<meta name="facebook-domain-verification" content="xyzzy1ndu84mmhaifl5gawo9ntafn8" />
We want only xyzzy1ndu84mmhaifl5gawo9ntafn8 copied and pasted into the "Domain Verification" field of this extension's settings.
Actions and Filters
-
Add a custom event to the page.
do_action( 'eacDoojigger_meta_pixel_add_event', $eventType, $eventData, $eventID );
-
Get the script code for a custom event (to attach to a DOM event).
$script = apply_filters( 'eacDoojigger_meta_pixel_event_code', $eventType, $eventData, $eventID );
-
Modify the event-specific data sent with the pixel and capi.
add_filter('eacDoojigger_meta_pixel_eventdata', function($eventData, $eventType) { // modify $eventData array as needed return $eventData; }
-
Modify the user data sent with the capi event.
add_filter('eacDoojigger_meta_pixel_userdata', function($userData, $eventData, $eventType) { // modify $userData array as needed return $userData; }
-
Modify the event ID sent with the pixel and capi.
add_filter('eacDoojigger_meta_pixel_eventid', function($eventID, $eventData, $eventType) { // modify $eventID as needed return $eventID; }
-
Enable console logging for pixel and capi.
add_filter('eacDoojigger_meta_pixel_console', function($enabled) { return true; }
-
Enable setting the _fbc cookie when fbclid is passed.
add_filter('eacDoojigger_meta_pixel_cookie', function($enabled) { return true; }
Normally, the pixel code should set the _fbc cookie when first-party cookies are enabled. If this is not getting set, this filter can be used to enable internal code to set the cookie.