moosend / tracker
By installing the Moosend PHP Tracking library you are can track page views, product views, add to cart events and successful purchases. You can later use these details to segment your user base, run automations, check how successful your latest promo has been and how many conversions your landing p
Installs: 264
Dependents: 0
Suggesters: 0
Security: 0
Stars: 9
Watchers: 10
Forks: 6
Open Issues: 0
Type:lib
Requires
- guzzlehttp/guzzle: ~7.0
Requires (Dev)
- dev-master
- 1.12.67
- 1.12.66
- 1.12.65
- 1.12.64
- 1.12.63
- 1.12.62
- 1.12.61
- 1.12.60
- 1.12.59
- 1.12.58
- 1.12.57
- 1.12.56
- 1.12.55
- 1.12.54
- 1.12.53
- 1.12.52
- 1.12.51
- 1.12.50
- 1.12.49
- 1.12.48
- 1.12.47
- 1.12.46
- 1.12.44
- 1.12.43
- 1.12.42
- 1.12.41
- 1.12.40
- 1.12.39
- 1.12.38
- 1.12.37
- 1.12.36
- 1.12.35
- 1.12.34
- 1.12.33
- 1.12.32
- 1.12.31
- 1.12.30
- 1.12.29
- 1.12.27
- 1.12.26
- 1.12.25
- 1.12.4
- 1.12.3
- 1.12.2
- 1.12.1
- 1.12.0
- 1.11.1
- 1.11.0
- 1.10.2
- 1.9.0
- 1.8.2
- v1.8.1
- 1.7.1
- 1.2.2
- dev-hotfix/urlencode_null
- dev-feature/update_version
- dev-feature/add_sessionid
- dev-feature/sub_forms
This package is auto-updated.
Last update: 2023-12-05 10:49:12 UTC
README
Moosend tracking library
Pulling dependencies
This project uses composer for auto-loading and managing dependencies.
To install all dependencies run : composer install
from your terminal / cmd, if everything goes fine you should see /vendor directory on root of this directory.
Running tests
This project relies on phpspec, an unit testing and BDD toolset. To run all tests type this on your terminal / cmd
composer test
Initialisation
Before you dive in with sending events you have to create an instance of Tracker first and perform initialisation. This is very important as it wont send any data to the server without a proper initialisation. The init. phase deals with some Cookies that determines if current user is a new visitor or a returned one.
$trackerFactory = new Moosend\TrackerFactory();
$tracker = $trackerFactory->create($siteId, $requestUseragent, $requestIpAddress);
$tracker->init('site-id');
There is another alternative, by using the function called track()
which creates the instance for you.
$tracker = track($siteId, $requestUseragent, $requestIpAddress);
You have to make sure that vendor/autoload.php is included somewhere on your code base in order to make this work.
Sending events
//identify
$tracker->identify('some@mail.com', 'John Doe', ['favourite-color' => 'blue']); //returns GuzzleHttp\Psr7\Response
//page view
$tracker->pageView('http://example.com');
//add to order
$tracker->addToOrder('itemCode', 'itemPrice', 'itemUrl', 'itemName', 'itemImage', $props);
//order completed
$order = $tracker->createOrder();
$order->addProduct('itemCode', 'itemPrice', 'itemUrl', 'itemName', 'itemImage', $props);
//add as many products as you want before tracking and order completed event
$order->addProduct('itemCode', 'itemPrice', 'itemUrl', 'itemName', 'itemImage', $props);
$tracker->orderCompleted($order);
Add Subscription Forms
In order to use Moosend subscription forms feature, you have to append our JS library into your HTML body, preferably in HEAD
//example how to embed JS snippet
<head>
<?php echo $tracker->addSubscriptionForms($siteId); ?>
</head>