https://developer.matomo.org/guides/tracking-javascript-guide
https://matomo.org/faq/reports/advanced-manually-tracking-ecommerce-actions-in-matomo/
Main code + pages vues (à activer sur toutes les pages)
<!-- Matomo -->
<script type="text/javascript">
var _paq = window._paq = window._paq || [];
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
var u="//matomo.formations-analytics.com/";
_paq.push(['setTrackerUrl', u+'matomo.php']);
_paq.push(['setSiteId', 3]);
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.type='text/javascript'; g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
</script>
<!-- End Matomo Code -->
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
/* tracker original
var u="//matomo.formations-analytics.com/";
_paq.push(['setTrackerUrl', u+'matomo.php']);
_paq.push(['setSiteId', '3']); */
/* ajout d'un second tracker car site déjà suivi par un premier tracker Matomo */
var secondaryTrackerUrl = "https://matomo.formations-analytics.com/";
var secondaryWebsiteId = 3;
_paq.push(['addTracker', secondaryTrackerUrl+'matomo.php', secondaryWebsiteId]);
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
</script>
<!-- End Matomo Code -->
Event
<script>
_paq.push(['trackEvent', 'eventCategory', 'eventAction', 'eventName']);
</script>
Event e-commerce
// Push Product View Data to Matomo - Populate parameters dynamically
_paq.push(['setEcommerceView',
"0123456789", // (Required) productSKU
"Ecommerce Analytics Book", // (Optional) productName
"Books", // (Optional) categoryName
9.99 // (Optional) price
]);
// You must also call trackPageView when tracking a product view
_paq.push(['trackPageView']);
// An addEcommerceItem push should be generated for each cart item, even the products not updated by the current "Add to cart" click.
_paq.push(['addEcommerceItem',
"0123456789", // (Required) productSKU
"Ecommerce Analytics Book", // (Optional) productName
["Books", "Best sellers"], // (Optional) productCategory
9.99, // (Recommended) price
1 // (Optional, defaults to 1) quantity
]);
// Pass the Cart's Total Value as a numeric parameter
_paq.push(['trackEcommerceCartUpdate', 15.5]);
Custom dimension (5 max – extensible via ligne de code )
./console customdimensions:add-custom-dimension --scope=action --count=5
<script>
_paq.push(['setCustomDimension', customDimensionId = 1, customDimensionValue = 'Member']);
_paq.push(['trackPageView']);
</script>
User ID
<script>
_paq.push(['setUserId', 'USER_ID_HERE']);
_paq.push(['trackPageView']);
</script>
Domaine et sous-domaines
_paq.push(['setSiteId', 1]);
_paq.push(['setTrackerUrl', u+'matomo.php']);
// Share the tracking cookie across example.com, www.example.com, subdomain.example.com, ...
_paq.push(['setCookieDomain', '*.example.com']);
// Tell Matomo the website domain so that clicks on these domains are not tracked as 'Outlinks'
_paq.push(['setDomains', '*.example.com']);
_paq.push(['trackPageView']);

