TigerZF
🌐Español

37.2. Uso de Google Analytics

La API de Google Analytics permite a las aplicaciones cliente solicitar datos, guardados en las cuentas de analytics.

Vea http://code.google.com/apis/analytics/docs/gdata/v2/gdataOverview.html para más información sobre la API de Google Analytics.

37.2.1. Obtención de datos de cuenta

Usando el feed de cuentas, puede obtener una lista de todas las cuentas disponibles para un usuario específico.

$service = Zend_Gdata_Analytics::AUTH_SERVICE_NAME;
$client = Zend_Gdata_ClientLogin::getHttpClient($email, $password, $service);
$analytics = new Zend_Gdata_Analytics($client);
$accounts = $analytics->getAccountFeed();

foreach ($accounts as $account) {
  echo "\n{$account->title}\n";
}

La llamada $analytics->getAccountFeed() da como resultado un objeto Zend_Gdata_Analytics_AccountFeed que contiene objetos Zend_Gdata_Analytics_AccountEntry. Cada uno de estos objetos representa una cuenta de Google Analytics.

37.2.2. Obtención de datos de informes

Además del feed de cuentas, Google ofrece un feed de datos, para obtener datos de informes usando la API de Google Analytics. Para facilitar la solicitud de estos informes, Zend_Gdata_Analytics ofrece una sencilla interfaz de construcción de consultas. Puede usar todas las métricas y dimensiones especificadas por la API. Además puede aplicar algunos filtros para obtener algunos datos comunes o incluso resultados complejos.

$query = $service->newDataQuery()->setProfileId($profileId)
  ->addMetric(Zend_Gdata_Analytics_DataQuery::METRIC_BOUNCES)
  ->addMetric(Zend_Gdata_Analytics_DataQuery::METRIC_VISITS)
  ->addDimension(Zend_Gdata_Analytics_DataQuery::DIMENSION_MEDIUM)
  ->addDimension(Zend_Gdata_Analytics_DataQuery::DIMENSION_SOURCE)
  ->addFilter("ga:browser==Firefox")
  ->setStartDate('2011-05-01')
  ->setEndDate('2011-05-31')
  ->addSort(Zend_Gdata_Analytics_DataQuery::METRIC_VISITS, true)
  ->addSort(Zend_Gdata_Analytics_DataQuery::METRIC_BOUNCES, false)
  ->setMaxResults(50);

$result = $analytics->getDataFeed($query);
foreach($result as $row){
  echo $row->getMetric('ga:visits')."\t";
  echo $row->getValue('ga:bounces')."\n";
}