我正在使用 Google Core Reporting API 从 Google Analytics 中提取数据。
我目前使用的查询是:
return $analytics->data_ga->get(
'ga:' . $profileId,
'today',
'today',
'ga:pageviews',
array(
'dimensions' => 'ga:pagePath',
'sort' => '-ga:pageviews',
'max-results' => 300
)
);
这个查询的问题是,如果带有不同的参数,同一个页面会被返回多次。
- /友好/网址
- /friendly/url?a=1
- /friendly/url?a=1&b=2
我想忽略参数并接收 /friendly/url 页面的聚合数据。
我找不到如何使用 Google 的文档实现此目的。 有人可以帮忙吗?
最佳答案
'ga:pagePath' 的值是
ga:pagePath A page on your website specified by path and/or query parameters. Use in conjunction with hostname to get the full URL of the page.
正如您在文档中看到的,它包括路径和查询
- /友好/网址
- /friendly/url?a=1
- /friendly/url?a=1&b=2
如果您想返回没有查询的那些,您最好的选择是向您的 request 添加过滤器。
大概是这样的
filters=ga:pagePath%3D%3D/friendly/url
请记住“ga:pageviews”返回的数字将只包含一个 url。我建议在 Query Explorer 中测试过滤器和结果
更新播放:
好的,您尝试做的事情很有趣,所以我想我会尝试一下。
在我的网站上,我有 s 用于搜索。 ga:pagepath 给我一些像这样的可爱的东西。
- /?s=1
- /?s=400 1
- /?s=访问+拒绝1
- /?s=分析+多 channel
- /?s=Google+Calendar+API+with+.net+–+Service+Account
我使用的请求
https://ga-dev-tools.appspot.com/query-explorer/?start-date=2016-01-01&end-date=2016-01-31&metrics=ga%3Ausers&dimensions=ga%3ApagePath&max-results=1000
如果我想要某人使用搜索的总次数怎么办。
我向请求 ga:pagepath=@/?s=
添加了一个过滤器并删除了 ga:pagepath 维度。然后 ga:users 是过滤器返回的计数。
这并不是真正通过添加组更像是添加 where 子句,但我认为它很接近。
https://ga-dev-tools.appspot.com/query-explorer/?start-date=2016-01-01&end-date=2016-01-31&metrics=ga%3Ausers&filters=ga%3Apagepath%3D%40%2F%3Fs%3D&max-results=1000
关于php - 核心报告 API - 忽略 URL 参数和 "group by",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35547570/