Je cherche à mettre en place un système de suivi des pages vues sur l'un de mes sites Web.
Le site Web est un répertoire où les fournisseurs peuvent annoncer leurs services. Les fournisseurs ont une page de profil unique sur le site, par exemple mysite.com/directory/abc-profile.html
L'idée est que les fournisseurs peuvent se connecter à leur zone de compte sur le site et afficher des statistiques sur le nombre de personnes visitant leur profil. Idéalement, je veux afficher ceci comme:
Total views | Total today | This week | This month | This year
Peu importe si les données ne sont pas complètement à jour.
J'ai déjà un code de suivi Google Analytics installé sur le site. Est-il possible d'utiliser l'API Google Analytics pour récupérer ces données? Si oui, quel type de requête dois-je faire? J'ai jeté un coup d'œil à la documentation mais je n'ai pas pu déterminer si les fonctions le permettaient ou non.
J'utilise PHP et MySQL sur le serveur.
Oui, vous devrez utiliser l'API Google Analytics pour cela. Je suggère de consulter le Query Explorer pour avoir une idée des requêtes que vous devrez créer.
Vous aurez besoin de nombreuses requêtes pour obtenir toutes les données dont vous avez besoin (en ajustant la date de début): - Vues totales - Cette année - Ce mois-ci - Cette semaine (c'est-à-dire les 7 derniers jours - à partir desquelles vous pouvez également obtenir Total Aujourd'hui).
Voici un exemple de requête:
https://www.googleapis.com/analytics/v3/data/ga?ids=ga:1234456789&dimensions=ga:pagePath&metrics=ga:pageviews&filters=ga:pagePath==/about-us.html&start-date=2013-10-15&end-date=2013-10-29&max-results=50
Alternativement, vous voudrez peut-être envisager www.embeddedanalytics.com ( divulgation - je travaille avec eux ). Nous avons un service/plate-forme qui permet aux propriétaires de sites Web d’intégrer GA des graphiques/statistiques basés sans avoir à apprendre l’API GA. Nous avons une version CMS qui faites exactement ce dont vous avez besoin (où vous écrivez l'appel pour passer le chemin de la page). Nous avons fait quelque chose comme ça avec un certain nombre de sites de partage de podcasts.
Google suggère d'utiliser Reporting API V4 maintenant. La réponse acceptée utilise V3.
Voici un exemple de demande V4:
POST https://analyticsreporting.googleapis.com/v4/reports:batchGet?key={YOUR_API_KEY}
{
"reportRequests": [
{
"viewId": "YOUR_VIEW_ID",
"dimensions": [
{
"name": "ga:pagePath"
}
],
"metrics": [
{
"expression": "ga:pageviews"
}
],
"dimensionFilterClauses": [
{
"filters": [
{
"operator": "EXACT",
"dimensionName": "ga:pagePath",
"expressions": [
"/your-path"
]
}
]
}
],
"dateRanges": [
{
"startDate": "2009-12-31",
"endDate": "2016-09-28"
}
]
}
]
}
oùYOUR_API_KEY
- pour les choses liées à l'authentification, suivez cette pageYOUR_VIEW_ID
- vous pouvez utiliser Explorateur de comptes pour trouver un ID de vue. (ou Admin -> Afficher -> Afficher les paramètres -> Afficher l'ID).
Pour plus de détails sur la documentation et un "Essayez-le!" suivre la console cette page .
Vous devriez pouvoir ajouter un filtre sur la page de destination. Je suppose que le site de chaque utilisateur a sa propre page de démarrage. Cela renvoie uniquement les données de cet utilisateur. Si vous voulez le code sur la façon de procéder, je vous suggère google: google analics core reporting api PHP tutorial
Une autre idée serait de laisser l'utilisateur y ajouter un compte Google Analytics à son profil. Ensuite, vous pouvez mettre le code Google Analytics sur cette page. Ensuite, ils peuvent suivre leurs propres données Google Analytics et vous n'aurez pas besoin de les traiter.