Google Analytics API: filtrer par URI?
-
27-09-2019 - |
Question
Mon site a des profils d'utilisateurs qui sont accessibles via des URL qui ressemblent à ceci: www.domain.com/profile/123/...
. Je veux montrer aux utilisateurs consulter les statistiques de la page de leur profil, mais ils doivent être en mesure de faire des jokers.
Par exemple, cela fonctionne:
filters=ga:pagePath==/profile/123/
Le problème est qu'il ya potentiellement d'autres segments URI qui suivent /profile/123/
. Je veux faire quelque chose comme ça (ne fonctionne pas):
filters=ga:pagePath==/profile/123/*
Suggestions?
La solution
Utilisez le 'contient une correspondance pour l'expression régulière' opérateur (~) de la Dimension Filtres .
filters=ga:pagePath=~/profile/123/*
Autres conseils
Cela fonctionne:
filters=ga:pagePath=~/profile/123/
Pour ne /*/view/*
(comme par @ commentaire de VinnyG), cela devrait fonctionner:
filters=ga:pagePath=~/[^/]+/view/
Je suppose que vous voulez faire correspondre l'un (et un seul) répertoire avant /view/
.
a fonctionné pour moi.
require('gapi.class.php'); $ga = new gapi('mail@example.com','google_analytics_password'); $filter = 'ga:pagePath==/home.php'; //first parameter is your Google Analytics profile id /* How to find Google Analytics Profile ID http://stackoverflow.com/questions/4119610/get-google-analytics-id-from-the-code-embed/4120625#4120625 */ $ga->requestReportData(0000000,array('pagePath'),array('pageViews','UniquePageviews'), '-pageViews', $filter); foreach($ga->getResults() as $result) { echo $result->getPageviews(); echo $result->getUniquePageviews(); echo $result->getPagePath(); } ?>
Un autre filtre des filtres Dimension qui fonctionne pour vous est contains "=@"
ga:pagePath=@/profile/123