setono/meta-conversions-api-bundle

Work with the Meta / Facebook Conversions API in your Symfony application

Installs: 46 047

Dependents: 2

Suggesters: 0

Security: 0

Stars: 1

Watchers: 1

Forks: 1

Open Issues: 1

Type:symfony-bundle

v0.1.5 2023-12-01 09:00 UTC

README

Latest Version Software License Build Status

Work with the Meta / Facebook Conversions API in your Symfony application. Under the hood this bundle integrates the Meta Conversions API PHP SDK library.

Installation

To install this bundle, simply run:

composer require setono/meta-conversions-api-bundle

This also installs the Bot Detection Bundle which is used to filter bot requests.

If you want to handle consent (i.e. cookie/GDPR consent), you can use the consent bundle, by installing it:

composer require setono/consent-bundle

Usage

<?php

declare(strict_types=1);

use Psr\EventDispatcher\EventDispatcherInterface;
use Setono\MetaConversionsApi\Event\Event;
use Setono\MetaConversionsApiBundle\Event\ConversionsApiEventRaised;

final class YourService
{
    private EventDispatcherInterface $eventDispatcher;

    public function __construct(EventDispatcherInterface $eventDispatcher)
    {
        $this->eventDispatcher = $eventDispatcher;
    }

    public function track(): void
    {
        $event = new Event(Event::EVENT_VIEW_CONTENT);
        $event->customData->contentType = 'product';
        $event->customData->contentName = 'Blue Jeans';
        $event->customData->contentIds[] = 'PRODUCT_SKU';

        $this->eventDispatcher->dispatch(new ConversionsApiEventRaised($event));
    }
}

Test the integration

To test the integration you can set the test event code (that you can retrieve from Meta / Facebooks event manager) and append it to any url on your website like so: https://example.com/?_testEventCode=[YOUR TEST EVENT CODE] or https://example.com/?_test_event_code=[YOUR TEST EVENT CODE]. This code is saved in a session and hence all your subsequent requests will be sent with the test event code.