플러그인은 사용자 상호작용을 측정하는 데 도움이 되도록 analytics.js의 기능을 개선하는 스크립트입니다. 플러그인은 일반적으로 일부 Google 애널리틱스 사용자에게는 필요하지 않은 기능(예: 전자상거래 또는 교차 도메인 측정)에 해당하므로 analytics.js에 기본적으로 포함되지 않습니다.
이 가이드에서는 analytics.js 플러그인을 요청하고 사용하는 방법을 설명합니다.
플러그인 요청
require
명령어는 플러그인 이름을 가져와 사용하기 위해 ga()
명령어 큐로 등록합니다. 플러그인에서 구성 옵션을 허용하는 경우 이 옵션을 require
명령어에 최종 인수로 전달할 수 있습니다.
다음은 전체 require
명령어의 서명입니다.
ga('[trackerName.]require', pluginName, [pluginOptions]);
예를 들어 다음은 기본 추적 도구와 함께 사용할 향상된 전자상거래 플러그인을 요청하는 방법입니다.
ga('require', 'ec');
또한 다음은 'myTracker'라는 추적 도구를 위해 광고 기능 플러그인을 요청하고 기본 쿠키 이름 값을 재정의하는 구성 옵션을 전달하는 방법입니다.
ga('myTracker.require', 'displayfeatures', {
cookieName: 'display_features_cookie'
});
플러그인 코드 로드
require
명령어는 ga()
명령어 큐와 함께 사용할 플러그인 메서드를 초기화하지만 플러그인 스크립트 자체를 로드하지는 않습니다. 타사 플러그인을 사용하거나 직접 플러그인을 작성하는 경우 플러그인 코드를 페이지에 직접 추가해야 합니다.
사이트에서 다른 기능의 로드를 차단하지 않도록 async
속성이 설정된 <script>
태그를 통해 플러그인 코드를 페이지에 추가하는 것이 좋습니다.
다음 코드는 가상의 링크 추적 플러그인을 요청하고 로드합니다.
<script>
ga('create', 'UA-XXXXX-Y', 'auto');
ga('require', 'linkTracker');
ga('send', 'pageview');
</script>
<!--Note: plugin scripts must be included after the tracking snippet. -->
<script async src="/path/to/link-tracker-plugin.js"></script>
플러그인 로드 대기 중
analytics.js 라이브러리와 analytics.js 플러그인은 모두 비동기식으로 로드되므로 플러그인이 완전히 로드되어 사용할 준비가 되었는지 확인하기가 어려울 수 있습니다.
analytics.js 라이브러리는 아직 로드되지 않은 플러그인의 require
명령어를 만나면 명령어 큐 실행을 중지하여 이 문제를 해결합니다. 플러그인이 로드되면 큐 실행이 정상적으로 계속됩니다.
따라서 사용 중인 플러그인을 테스트하여 올바로 로드되고 실행되는지 확인하는 것이 매우 중요합니다. 플러그인이 로드되지 않거나 오류가 발생하면 이후의 모든 analytics.js 명령어가 실행되지 않습니다.
플러그인 메서드 호출
플러그인을 요청한 후 플러그인의 메서드를 ga()
명령어 큐와 함께 사용할 수 있습니다. 다음은 플러그인 메서드를 호출하기 위한 명령어 서명입니다.
ga('[trackerName.][pluginName:]methodName', ...args);
예를 들어 향상된 전자상거래 플러그인의 addProduct
메서드는 다음과 같이 호출할 수 있습니다.
ga('ec:addProduct', {
'id': 'P12345',
'quantity': 1
});
또는 명령어 문자열에 추적 도구 이름을 추가하여 해당 이름이 지정된 추적 도구에서 호출할 수 있습니다.
ga('myTracker.ec:addProduct', {
'id': 'P12345',
'quantity': 1
});
다음 단계
이 섹션의 모든 가이드를 읽었다면 analytics.js의 기능 대부분에 익숙해지셨을 것입니다. 다음 가이드에서는 analytics.js 구현을 디버깅하여 오류를 더 쉽게 감지하고 코드의 역할을 정확히 확인하는 방법을 설명합니다.