fbpx

在閱讀這篇之前,假設讀者都已經知道GA的基礎知識,比如怎麼看GA報表,或已經知道dimensions 以及 metrics的差異等等,這樣才能正確的抓到自己想要的資料


首先,先include ‘gapi.class.php’ 這支程式,從這裡GitHub下載

<?phpinclude_once("/api/gapi.class.php"); $gaUsername = ‘[your ga name]’;   //你GA帳號的名稱$gaPassword = ‘[your ga password]’;  //你GA帳號的密碼$profileId = ‘123456’;

到這邊為止都是先處理好帳號問題,你要先匯入你自己的GA帳號,API才知道要抓誰的資料


這邊開始要設定想要抓取的 dimensions or metrics,若你不確定要怎麼抓,可以參考此官方英文文件

https://developers.google.com/analytics/devguides/reporting/core/dimsmets

$dimensions = array(‘eventLabel’); //可換成 eventCategory
$metrics = array(‘totalEvents’,’uniqueEvents’); //查詢重複事件與不重複事件$sort = “eventLabel” ; //根據哪個資料排序//如SQL的WHERE 下篩選判斷,想要抓什麼資料
$filter = “eventCategory== AD_Button”;$fromDate = “3daysAgo”; //輸入一個日期區間$toDate = “2daysAgo”;

GA的日期搜尋方式如下顯示:

昨天 : “yesterday”

前天: “2daysAgo”

大前天 : “3daysAgo”

指定日期: ‘2017–06–06’


打好想要的資料,就可以開始 call ga的 api了

//開始call ga api$ga = new gapi($gaUsername, $gaPassword);$ga->requestReportData($profileId, $dimensions, $metrics, $sort, $filter, $fromDate, $toDate, 1, 10000);$gaResults = $ga->getResults();
foreach($gaResults as $results){$GA_uniqueEvents= $results->getMetrics(); //拿 metrics$GA_eventLabel = $results->getDimensions(); //拿Dimension$newarray[‘GA_totalEvents’] = $GA_uniqueEvents[‘totalEvents’] ; //取總點擊$newarray[‘GA_uniqueEvents’] = $GA_uniqueEvents[‘uniqueEvents’]; //取不重複點擊$newarray[‘GA_eventLabel’] = $GA_eventLabel[‘eventLabel’] ;;} return $newarray;?>

之後你就可以利用$newarray去做發揮,想要存在DB或是顯示在前端都可以


注意事項: GA api是有 request上限的,因此不建議在短時間內大量 call這 api,你會被google寄封信說要你提升GA帳號成企業版本,那很貴的

因此好的做法是,每次call GA api有個時間間隔,並且盡量減少次數,最好是能存在DB裡,這樣想用幾次就用幾次,不用一直request

文章出處 —

Daniel Wang,前端工程師。

Facebook Comments
Code For Marketing

Code For Marketing

鼓勵行銷人學習「工程思維」培養數據敏銳度,推廣善用工具的知識教育組織,透過數據與工程的掌握與應用讓行銷人提升價值,有效運用行銷工程。