Google Analytics module
Installatie & Configuratie
Je kunt de module downloaden op onze Github repository.
composer require buckaroo/magento2analytics
php bin/magento module:enable Buckaroo_Magento2Analytics
php bin/magento setup:upgrade
php bin/magento setup:static-content:deploy
Algemene informatie
GA Tracking wijst de conversiebron niet correct toe wanneer de transactie via verschillende browsers of via verschillende apparaten plaatsvindt. Bezoeker komt vanuit een advertentiecampagne op de website, doorloopt het bestelproces, maar het betalingsproces vindt plaats op een ander apparaat of browser en de succespagina wordt ook op een ander apparaat weergegeven. Om deze situatie op te lossen, volgen we de Google Client ID tegen de bestelling en we kunnen een verrijkte versie van de trackingcode activeren op de succespagina door de parameter clientId toe te voegen.
Javascript / GTM
clientId waarde wordt doorgegeven als parameter in de URL van de succespagina, onderdeel van het redirect-proces. Dit kan worden geëxtraheerd en gebruikt in de javascript-code die de GA/UA/GTM/other-gebeurtenis voor de conversie activeert. De standaardstructuur van de URL is als volgt: /checkout/onepage/success/?clientId=/
en de clientId kan worden geëxtraheerd:
try{
currentPageUrl = window.location.href;
myClientId = currentPageUrl.split('clientId=')[1].split('/')[0];
} catch(error) {
myClientId = '';
}
and sent to GA/UA part of the tracking code:
ga('create', 'UA-XXXXX-Y', {
'storage': 'none',
'clientId': myClientId
});
Serverside
De informatie met betrekking tot clientId wordt ook opgeslagen in de database. En dit kan op serverniveau worden gebruikt, via de Modelrepository Buckaroo\Magento2Analytics\Model\AnalyticsRepository met behulp van de quoteId:
use Buckaroo\Magento2Analytics\Model\AnalyticsRepository;
use Magento\Framework\Exception\NoSuchEntityException;
class MyCustomViewModel
{
public function __construct(
AnalyticsRepository $analyticsRepo
) {
$this->analyticsRepo = $analyticsRepo;
}
public function getClientId($quoteId)
{
$clientId = null;
try {
$clientIdData = $analyticsRepo->getByQuoteId($quote->getId());
return $clientIdData->getClientId();
} catch(\Exception $e) {
throw new NoSuchEntityException(__('ClientId not found for quoteId' . $quoteId ));
}
}
}
Mocht je technische vragen hebben stuur dan een mail naar:
E-mail: support@buckaroo.nl
Ons telefoonnummer en contactgegevens van overige afdelingen vind je in de Buckaroo Payment Plaza onder "Contactgegevens" linksonder in het scherm.