"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Google Analytics 및 WPO 분석기

Google Analytics 및 WPO 분석기

2024-11-07에 게시됨
검색:108

Google Analytics and WPO Analyzers

내 이전 게시물 번역: Google Analytics 및 WPO 분석기

Google PageSpeed ​​Insights(및 기타 WPO 분석기)에 대한 비판이 점점 더 많아지고 있습니다. 많은 사람들이 Google의 주력 추적 서비스인 Google Analytics가 오류로 표시된다는 사실이 모순적이라고 생각하기 때문입니다. "근데 같은 소속사야!"라는 소리가 들립니다.

Google Analytics는 다른 추적 서비스와 마찬가지로 웹사이트가 로드되는 동안 많은 리소스를 소비합니다. Google PageSpeed ​​Insights와 같은 서비스에서 이를 표시하여 최적화할 수 있다는 점은 칭찬할 만합니다. 나에게는 그렇지 않으면 WPO 도구로서의 신뢰성을 잃을 것입니다. 하지만 최적화에 대해 모르는 사람은 도구를 비난할 수도 있다는 것을 이해합니다. 이솝 우화 여우와 포도가 생각나네요.

Google Analytics 스크립트를 최적화하는 데 사용되는 옵션 중 하나는 이를 자체 서버에 호스팅하고 브라우저가 이를 캐시할 수 있도록 만료일을 설정하는 것입니다. 이는 Google이 권장하지 않는 사항입니다. 원할 때마다 코드를 업데이트할 수 있는 기능을 상실하기 때문에 이해할 수 있습니다. Google의 설명에 따르면 이 옵션을 선택하지 않는 경우 몇 시간마다 Google Analytics 스크립트를 다운로드하도록 CRON 작업을 설정하면 이 문제를 쉽게 극복할 수 있습니다.

또 다른 옵션(이전 옵션과 완전히 호환됨)이자 제가 사용하는 옵션은 누군가가 페이지를 스크롤할 때 Google Analytics 스크립트를 로드하는 것입니다. 이는 모든 사용자를 추적하지 못할 것이라고 생각하게 만들 수 있기 때문에 해로운 것처럼 보일 수 있습니다. 하지만 제 생각에는 더 정확한 측정항목을 제공할 것입니다.

  • 첫째, 귀하의 사이트에 있는 링크를 빠르게 클릭하고 자신의 실수를 깨닫고 즉시 떠나는 사람들을 추적하지 않습니다.
  • 일반 사용자인 것처럼 보이는 로봇, 스파이더 또는 이와 유사한 개체는 추적하지 않습니다(실제 성격을 식별하는 사용자 에이전트 헤더를 보내지 않기 때문).

게다가 다른 모든 항목이 이미 로드된 후에 스크립트가 로드되고(따라서 속도가 느려지지 않음) 사용자가 웹사이트를 탐색하는 동안 투명하게 로드되기 때문에 이는 최적의 옵션입니다.

이를 가능하게 하는 JavaScript 코드는 다음과 같습니다.

/**
 * Google Analytics and WPO Analyzers - WebPerf - Manuel Canga
 * From post: https://trasweb.net/snippets/google-analytics-and-wpo-analyzers
 */

var is_analytics_loaded = false;

load_googleAnalytics = function () {
    if (is_analytics_loaded) {
        return false;
    }

    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
        (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
        m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
    })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

    ga('create', 'UA-xxxx', 'auto');
    ga('send', 'pageview');

    is_analytics_loaded = true;
};


window.addEventListener("scroll", function () {
    if (document.documentElement.scrollTop !== 0 || document.body.scrollTop !== 0) {
        load_googleAnalytics();
    }
}, true);

25행에서 29행까지 방문자가 스크롤할 때(스크롤 이벤트가 트리거되고 스크롤 막대 위치가 더 이상 상단에 있지 않음) 브라우저에 알립니다. , load_googleAnalytics 함수가 실행되어야 합니다. 이 함수는 현재 페이지에 Analytics가 이미 로드되었는지 여부를 플래그를 통해 확인합니다(9~12행). 그렇지 않은 경우 추적 스크립트가 로드됩니다(13~19행). 18행에 Google Analytics ID가 삽입되어 있습니다. 마지막으로, 라인 21에서는 스크립트가 다시 로드되지 않도록 플래그가 활성화됩니다.


마음에 드셨다면 공유하는 것도 잊지 마세요.

릴리스 선언문 이 기사는 https://dev.to/manuelcanga/google-analytics-and-wpo-analyzers-5coa?1에서 복제됩니다.1 침해 내용이 있는 경우, [email protected]에 연락하여 삭제하시기 바랍니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3