работали над этим уже два дня и, похоже, никуда не денутся.
Я использую GAPI Google для анализа PHP-класса. Это текущий код, который у меня есть сейчас:
$ga->requestReportData("[UID]",array('day'),array('visits'), array("day"));
То, что я хочу сделать, – это получить число просмотров страниц за последние 7 дней. Таким образом, выход будет выглядеть примерно так:
<?php foreach($ga->getResults() as $result) { ?> Date: <?php echo $result; ?> Page Views: <?php echo $result->getPageviews(); ?> <?php } ?>
Я новичок в Google Analytics API, поэтому не знаю, с чего начать. Спасибо за любую помощь!
Это должно помочь вам
<?php require 'gapi.class.php'; $gaEmail = 'youremail@email.com'; $gaPassword = 'your password'; $profileId = 'your profile id'; $dimensions = array('pagePath','country', 'region', 'city'); $metrics = array('visits'); $sortMetric=null; $filter=null; $startDate='2011-02-01'; $endDate='2011-02-28'; $startIndex=1; $maxResults=10000; $ga = new gapi($gaEmail, $gaPassword); $ga->requestReportData($profileId, $dimensions, $metrics, $sortMetric, $filter, $startDate, $endDate, $startIndex, $maxResults); $totalPageviews = $ga->getPageviews(); foreach ($ga->getResults() as $result) { $visits = $result->getVists(); print $visits; } ?>
Имейте в виду, чтобы отключить двухэтапную аутентификацию для учетной записи google. Если вы этого не сделаете, это приведет к ошибке с ошибкой, несмотря на действительность вашей учетной записи.
Желаем добавить дополнение к @ ladiesMan217, мы можем создавать специальные пароли приложений, если у нас есть проверка двух шагов.
Что касается GAPI, то я создал класс, который даст много информации, но с помощью нескольких методов. Вы можете скачать этот класс здесь http://www.thetutlage.com/post=TUT217
<?php error_reporting(0); // it is important as filtering tend to leave some unwanted errors include_once( 'class.analytics.php' ); define('ga_email','your_analytics_email'); define('ga_password','your_analytics_password'); define('ga_profile_id','your_analytics_profile_id'); // Start date and end date is optional // if not given it will get data for the current month $start_date = '2012-05-28'; $end_date = '2012-06-27'; $init = new fetchAnalytics(ga_email,ga_password,ga_profile_id,$start_date,$end_date); $trafficCount = $init->trafficCount(); $referralTraffic = $init->referralCount(); $trafficCountNum = $init->sourceCountNum(); $trafficCountPer = $init->sourceCountPer();
?>
Первый метод trafficCount даст вам (PageViews, Visits, Bounce Rate, Time costs of site, New Visits)
Второй метод referralCount даст вам (реферральный URL и общее количество обращений от этого URL-адреса)
Третий метод sourceCountNum предоставит вам источник трафика, такой как (прямой трафик, органический, реферальный, фид, электронные письма и другие)
Последний метод sourceCountPer предоставит ту же информацию, что и третья, с одной разницей здесь информация будет в процентах.
Надеюсь, что это поможет, и, пожалуйста, дайте мне знать в случае каких-либо ошибок.
<?php define('ga_email','you email'); define('ga_password','passworkd'); define('ga_profile_id','profile ID or View ID'); require 'gapi.class.php'; // pars to pass on Google Server Analytic Api $start_date='2013-12-01'; $end_date='2013-12-31'; $ga = new gapi(ga_email,ga_password); try { $ga->requestReportData(ga_profile_id, array('browser','browserVersion'), array('pageviews','visits','visitors','visitBounceRate'), $sort_metric=null, $filter=null, $start_date,$end_date, $start_index=1, $max_results=30); } catch (Exception $e) { echo 'Caught exception: ', $e->getMessage(), "\n"; } ?> <table width='60%'> <tr style="background-color:#00ff00;"> <th>Browser & Browser Version</th> <th>Page Views</th> <th>Visits</th> <th>Visitors</th> <th>Visit Bounce Rate</th> </tr> <?php $i = 0; foreach($ga->getResults() as $result): //$ga->printfs($result); if($i%2 == 0) $color = "#d3d3d3"; else $color = "#FFFFF"; ?> <tr style="background-color:<?php echo $color ?>"> <td><?php echo $result ?></td> <td><?php echo $result->getPageviews() ?></td> <td><?php echo $result->getVisits() ?></td> <td><?php echo $result->getVisitors() ?></td> <td><?php echo $result->getVisitBounceRate() ?></td> </tr> <?php $i++; endforeach ?> </table> <table> <tr> <th>Total Results</th> <td><?php echo $ga->getTotalResults() ?></td> </tr> <tr> <th>Total Page views</th> <td><?php echo $ga->getPageviews() ?> </tr> <tr> <th>Total Visits</th> <td><?php echo $ga->getVisits() ?></td> </tr> <tr> <th>Total Visitors</th> <td><?php echo $ga->getVisitors() ?></td> </tr> <tr> <th>Visit Bounce Rate</th> <td><?php echo $ga->getVisitBounceRate() ?></td> </tr> <tr> <th>Results Updated</th> <td><?php echo $ga->getUpdated() ?></td> </tr> </table>