API do Google Analytics: filtre por URI?
-
27-09-2019 - |
Pergunta
Meu site possui perfis de usuário que são acessíveis por meio de URLs que se parecem com o seguinte: www.domain.com/profile/123/...
. Quero mostrar os usuários da página de visualizar estatísticas de seus perfis, mas preciso poder fazer curingas.
Por exemplo, isso funciona:
filters=ga:pagePath==/profile/123/
O problema é que existem potencialmente outros segmentos de URI que se seguem /profile/123/
. Eu quero fazer algo assim (não funciona):
filters=ga:pagePath==/profile/123/*
Sugestões?
Solução
Use o 'contém uma correspondência para o operador de expressão regular' (~) do Filtros de dimensão.
filters=ga:pagePath=~/profile/123/*
Outras dicas
Isso vai funcionar:
filters=ga:pagePath=~/profile/123/
Façam /*/view/*
(De acordo com o comentário de @vinnyg), isso deve funcionar:
filters=ga:pagePath=~/[^/]+/view/
Suponho que você queira corresponder a um (e apenas um) diretório antes /view/
.
trabalhou para mim.
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(); } ?>
Outro filtro dos filtros de dimensão que funcionaria para você é contains "=@"
ga:pagePath=@/profile/123