Google Analytics PHP API(GAPI) - 获取直接流量数据

时间:2013-02-19 09:22:51

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

我是google analytics的新手,我仍在寻找解决方案。我正试图找到一种方法来检测仪表板上的直接流量下的数据(目标网页,访问次数,网页/访问次数,平均访问持续时间,新访问次数百分比,跳出率)(流量来源 - >来源 - >直接)。我尝试使用define('filter', 'source == direct');作为their website states过滤它,但没有运气可用。我见过类似的帖子here,但我想加深搜索。我错过了什么吗?

我目前的代码只能从 所有流量中检索数据。

require_once('gapi.class.php');

define('email', 'email address');
define('password', 'password');
define('profileID', profileID);
define('dimensions', 'source');
define('metrics', 'visits');
define('sortMetric', '-visits');
define('filter', null);
define('startDate', '2013-01-18');
define('endDate', '2013-02-17');
define('startIndex', 1);
define('maxResult', 10);

$ga = new gapi(email, password);
$ga->requestReportData(profileID,dimensions,metrics,sortMetric,filter,startDate,endDate,startIndex,maxResult);

foreach($ga->getResults() as $result){
    echo '<strong>'.$result.'</strong><br />';
    echo 'Source: ' . $result->getSource() . ' ';
    echo 'Visits: ' . $result->getVisits() . '<br /><br />';
}

1 个答案:

答案 0 :(得分:3)

我找到了答案,只是想与大家分享,以防有人遇到同样的问题。

基本上我的错误是我没有用括号direct包围()。我刚刚将define('filter', 'source == direct');替换为define('filter', 'source==(direct)');和中提琴!我得到了我想要的东西。

这是我的代码,以防万一你需要它,你可能会注意到我已经替换了维度和指标,因为我需要它们成为一个数组。

require_once('gapi.class.php');

define('email', 'email address');
define('password', 'password');
define('profileID', profileID);
$dimensions = array('landingPagePath');
$metrics = array('visits','pageviewsPerVisit','avgTimeOnSite','percentNewVisits','visitBounceRate');
define('sortMetric', '-visits');
define('filter', 'ga:source==(direct)');
define('startDate', '2013-01-18');
define('endDate', '2013-02-17');
define('startIndex', 1);
define('maxResult', 10);

$ga = new gapi(email, password);
$ga->requestReportData(profileID,$dimensions,$metrics,sortMetric,filter,startDate,endDate,startIndex,maxResult);