如何从GA API或GAPI获取某些网址的访问次数?

时间:2014-02-09 17:43:03

标签: php google-analytics google-analytics-api

基本上我有一个博客,如果您以管理员身份登录,我想显示每个帖子的唯一视图数量(我需要它来计算我不能只看常规GA管理员的统计信息)

因此,对于输入,它将是一系列URL路径。

例如,如果你是一名管理员,从几天前查看帖子的第3页,每页有10个帖子,那么它将是10个输入路径。

喜欢这样......

输入

'/hello-world/'
'/this-demo-post/'
'/woot/'

然后它会输出类似这样的东西,其中数组值是唯一访问者的数量:

[0] => 1003,
[1] => 140,
[2] => 7761

此时我只想在页面上以JSON格式输出,然后使用JS在每个帖子旁边进行计算。

棘手的部分是如何从GA获取此信息,因为它似乎只是提取所有数据。即使我将日期限制为3天,它仍然会提取仍然获得大量流量的旧帖子的所有数据。它会使结果变得混乱甚至可能“推出”我希望看到的一些帖子,如果它不符合结果范围。

我在考虑使用10个路径上的很多(this |或| that)过滤器正则表达式?

这是我到目前为止所拥有的。

require 'gapi.class.php';

date_default_timezone_set('America/New_York');
$dimensions = array('pagePath');
$metrics    = array('uniquePageviews'); // visits
$sortMetric = null;
$filter     = null;
$startDate  = date('Y-m-d', strtotime('-2 days'));
$endDate    = date('Y-m-d');
$startIndex = 1;
$maxResults = 10000;

$ga = new gapi($gaEmail, $gaPassword);

$ga->requestReportData($profileId, $dimensions, $metrics, $sortMetric, $filter, $startDate, $endDate, $startIndex, $maxResults);

编辑回想起来,这一切都可以通过“先看”排序的方式解决,而不仅仅是按总观看次数排序。这是在GAPI吗?

1 个答案:

答案 0 :(得分:1)

<强>督学

这个可能很棘手: - )

让我先谈谈可能出现的问题:

  • filter character limit(128个字符)
  • 请注意,唯一身份访问者唯一身份浏览量指标略有不同,如果日期范围使用不正确(如果您运行查询),两者都可能导致奇怪的数字在每天的日子里,每个人每天都会“独一无二”)

现在回答你的问题:

  

棘手的部分是如何从GA中获取此信息   只需输入所有数据。

原因实际上是您未在过滤器中指定任何内容,因此当您使用 pagePath 维度和 uniquePageviews 查询帐户时指标,您可以获得所有页面的数字。

但这会是一个问题吗?您是否可以访问具有特定页面的行以及与该页面关联的编号,然后在报告中使用它?

如果没有,对我来说唯一合理且自动化的方式似乎将您的查询分成多个查询,并实际为每个页面运行它,并始终在过滤器中使用pagePath。

如果有几个,那应该没问题 - 如果数百/千,可能不是最聪明的事情。另外,不要忘记the limits and API quota

但我建议使用custom variables / custom dimensions并将内部PageID与每次网页浏览一起发送。这样,配对可能会容易得多。只需使用PostID找到正确的数字并显示它。

希望这有帮助。