Suivi Matomo Version 2.9 et supérieure Version 2.7 et 2.8 Version 2.6 et inférieure Paramétrage avancé : statistiques sur les mots clés recherchés Affichage des statistiques Matomo Traquer la rechercha via Matomo Suivi Matomo Version 2.9 et supérieure 1. Importer la XSL suivante:
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<xsl:import href="gdpr:matomo"/> <xsl:import href="gdpr:matomo"/>
<xsl:import href="gdpr:matomo"/> 2. Dans la section "<head>" de vos chartes, faire appel au template "matomo"
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<html>
<head>
[...]
<xsl:call-template name="matomo"/>
</head>
<body>
[...]
</body>
</html> <html>
<head>
[...]
<xsl:call-template name="matomo"/>
</head>
<body>
[...]
</body>
</html>
<html>
<head>
[...]
<xsl:call-template name="matomo"/>
</head>
<body>
[...]
</body>
</html> Version 2.7 et 2.8 1. Importer la XSL suivante:
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<xsl:import href="gdpr:piwik"/> <xsl:import href="gdpr:piwik"/>
<xsl:import href="gdpr:piwik"/> 2. Dans la section "<head>" de vos chartes, faire appel au template "piwik"
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<html>
<head>
[...]
<xsl:call-template name="piwik"/>
</head>
<body>
[...]
</body>
</html> <html>
<head>
[...]
<xsl:call-template name="piwik"/>
</head>
<body>
[...]
</body>
</html>
<html>
<head>
[...]
<xsl:call-template name="piwik"/>
</head>
<body>
[...]
</body>
</html> Version 2.6 et inférieure 1. Importer la XSL suivante:
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<xsl:import href="plugin:web-analytics://stylesheets/piwik.xsl"/> <xsl:import href="plugin:web-analytics://stylesheets/piwik.xsl"/>
<xsl:import href="plugin:web-analytics://stylesheets/piwik.xsl"/> 2. Dans la section "<head>" de vos chartes, faire appel au template "piwik"
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<html>
<head>
[...]
<xsl:call-template name="piwik"/>
</head>
<body>
[...]
</body>
</html> <html>
<head>
[...]
<xsl:call-template name="piwik"/>
</head>
<body>
[...]
</body>
</html>
<html>
<head>
[...]
<xsl:call-template name="piwik"/>
</head>
<body>
[...]
</body>
</html> Paramétrage avancé : statistiques sur les mots clés recherchés Les statistiques sur les mots clés n'est pas compatible avec l'utilisation du gestionnaire de cookies tarteaucitron
Matomo permet d'obtenir des statistiques sur les mots clés les plus recherchés.
Par défault Ametys envoi au serveur Matomo les mots clés recherchés au travers du champ de recherche nommé "texfield" .
Si vous avez besoin de traquer un ou plusieurs autres champs de recherche, faite appel au template "matomo" (ou "piwik" suivant la version de votre plugin web-analytics" en précisant le ou les noms des champs de recherche à traquer comme dans l'exemple ci-dessous:
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<xsl:call-template name="matomo">
<xsl:with-param name="keywordFields">
<fields>
<field name="textfield"/>
<field name="fulltext"/>
<field name="keywords"/>
</fields>
</xsl:with-param>
</xsl:call-template> <xsl:call-template name="matomo">
<xsl:with-param name="keywordFields">
<fields>
<field name="textfield"/>
<field name="fulltext"/>
<field name="keywords"/>
</fields>
</xsl:with-param>
</xsl:call-template>
<xsl:call-template name="matomo">
<xsl:with-param name="keywordFields">
<fields>
<field name="textfield"/>
<field name="fulltext"/>
<field name="keywords"/>
</fields>
</xsl:with-param>
</xsl:call-template> Affichage des statistiques Matomo A partir de la version 2.9.0
A partir de la version 2.9.0, il est possible de récupérer et d'afficher les statistiques Matomo du nombre de vues.
Pour cela vous devrez importer le JS suivant dans la section <head> de votre charte graphique:
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<script src="{ametys:pluginResourceURL('web-analytics', 'js/AmetysMatomoHelper.js')}" type="text/javascript"/> <script src="{ametys:pluginResourceURL('web-analytics', 'js/AmetysMatomoHelper.js')}" type="text/javascript"/>
<script src="{ametys:pluginResourceURL('web-analytics', 'js/AmetysMatomoHelper.js')}" type="text/javascript"/> Ce fichier fournit un helper JS AmetysMatomoHelper.getPageData permettant de récupérer les statistiques sur le nombre de vue de la page courante. Les arguments sont les suivants:
selector : selecteur jquery permettant d'identifier l'élément HTML qui affichera les statistiquescontextPath : le chemin du contexte courantpageUrl : url absolue de la page pour laquelle on souhaite obtenir les statistiques. Laissez vide ou null pour la page courantecallback : fonction JS qui sera appelée après la récupération des statistiques (optionnelle)Le helper récupére les statistiques auprès du serveur Matomo et modifie les éléments HTML cibles identifiés par un attribut "data-matomo" de la manière suivante:
data-matomo="nb-visits": nombre de vues totalesdata-matomo="nb-visits-last-days": nombre de vues sur les X derniers jours, X étant défini dans les paramètres du sitedata-matomo="last-days": plage des X derniers joursExemple d'intégration:
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<div class="stats" style="display: none">
<span data-matomo="nb-visits" ></span> vues dont <span data-matomo="nb-visits-last-days"></span> les <span data-matomo="last-days"></span> derniers jours
</div>
<script type="text/javascript">
$j(document).ready(function() {
AmetysMatomoHelper.getPageData(".stats", "<xsl:value-of select="$site-uri-prefix" />", null, function() {
$j(".stats").show();
});
});
</script> <div class="stats" style="display: none">
<span data-matomo="nb-visits" ></span> vues dont <span data-matomo="nb-visits-last-days"></span> les <span data-matomo="last-days"></span> derniers jours
</div>
<script type="text/javascript">
$j(document).ready(function() {
AmetysMatomoHelper.getPageData(".stats", "<xsl:value-of select="$site-uri-prefix" />", null, function() {
$j(".stats").show();
});
});
</script>
<div class="stats" style="display: none">
<span data-matomo="nb-visits" ></span> vues dont <span data-matomo="nb-visits-last-days"></span> les <span data-matomo="last-days"></span> derniers jours
</div>
<script type="text/javascript">
$j(document).ready(function() {
AmetysMatomoHelper.getPageData(".stats", "<xsl:value-of select="$site-uri-prefix" />", null, function() {
$j(".stats").show();
});
});
</script> Traquer la rechercha via Matomo A partir de la version 2.9.0
A partir de la version 2.9.0, il est possible de lancer un événement dans Matomo à chaque utilisation du nouveau moteur de recherche d'Ametys.
Pour cela, il faut dans sa charte graphique :
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<xsl:import href="plugin:web-analytics://stylesheets/search.xsl" /> <xsl:import href="plugin:web-analytics://stylesheets/search.xsl" />
<xsl:import href="plugin:web-analytics://stylesheets/search.xsl" />
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<xsl:template name="common-service-head-js">
...
<xsl:call-template name="matomo-search-helper" />
...
</xsl:template> <xsl:template name="common-service-head-js">
...
<xsl:call-template name="matomo-search-helper" />
...
</xsl:template>
<xsl:template name="common-service-head-js">
...
<xsl:call-template name="matomo-search-helper" />
...
</xsl:template> Ce template peut être appelé avec les deux paramètres suivant :
textField
Le nom technique du champ textuel de recherche. Par défaut, il prend le champ de recherche "Texte intégral" ou "Titre ou texte intégral"
categoryFields
Un tableau des noms techniques des champs qui catégoriseront la recherche. Par défaut, ce sont tous les champs qui sont énumérés.
Exemple :
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<xsl:call-template name="matomo-search-helper">
<xsl:with-param name="textField"><xsl:value-of select="/search/form/fields/criterion[@definition = 'common$wording$textfield' or @definition = 'common$titleorwording$textfield']/@name" /></xsl:with-param>
<xsl:with-param name="categoryFields" >[<xsl:for-each select="/search/form/fields/criterion[enumeration]">"<xsl:value-of select="@name" />"<xsl:if test="position() != last()" >,</xsl:if></xsl:for-each>]</xsl:with-param>
</xsl:call-template> <xsl:call-template name="matomo-search-helper">
<xsl:with-param name="textField"><xsl:value-of select="/search/form/fields/criterion[@definition = 'common$wording$textfield' or @definition = 'common$titleorwording$textfield']/@name" /></xsl:with-param>
<xsl:with-param name="categoryFields" >[<xsl:for-each select="/search/form/fields/criterion[enumeration]">"<xsl:value-of select="@name" />"<xsl:if test="position() != last()" >,</xsl:if></xsl:for-each>]</xsl:with-param>
</xsl:call-template>
<xsl:call-template name="matomo-search-helper">
<xsl:with-param name="textField"><xsl:value-of select="/search/form/fields/criterion[@definition = 'common$wording$textfield' or @definition = 'common$titleorwording$textfield']/@name" /></xsl:with-param>
<xsl:with-param name="categoryFields" >[<xsl:for-each select="/search/form/fields/criterion[enumeration]">"<xsl:value-of select="@name" />"<xsl:if test="position() != last()" >,</xsl:if></xsl:for-each>]</xsl:with-param>
</xsl:call-template> Il faut bien s'assurer que lors de l'intégration du moteur de recherche, le template form-result-js soit bien appelé. Actuellement il est appelé par le template search-results-children qui est lui-même appelé par le template search-results . La présence de ce template doit être impérativement sous la div ayant pour attribut data-ametys-search-role="search-results" .