Kiedyś na jednym z for dyskusyjnych (zabijcie mnie, ale teraz nie mogę tego znaleźć) pojawił się temat ignorowania własnych wizyt na stronie/blogu w statystykach Google Analytics. Nie dla każdego jest to sprawa prosta i oczywista, dlatego przedstawię tutaj trzy najpopularniejsze i najskuteczniejsze metody radzenia sobie z tym zagadnieniem.
Sposób pierwszy: Blokowanie własnego adresu IP
Ta metoda jest najprostsza ze wszystkich tutaj opisanych, ale warunkiem jej użycia jest posiadanie stałego adresu IP. Aby zignorować ruch z naszego adresu IP, wystarczy w ustawieniach Google Analytics kliknąć link Edytuj znajdujący się przy interesującym nas profilu strony (na przykładzie mojego drugiego bloga znajdującego się pod adresem wiecek.biz):
![]()
Następnie w sekcji „Filtry zastosowane do profilu” trzeba kliknąć Dodaj filtr:

I na koniec wystarczy już tylko wpisać swój adres IP i zapisać zmiany. Jeżeli nie wiesz, jaki jest Twój adres IP, wystarczy wejść na tą stronę i go sobie przepisać :)

Sposób drugi: Ukrywanie kodu śledzenia
Kolejnym sposobem jest wstawienie kodu śledzenia w taki sposób, aby w ogóle się nie ładował przy Twoich wizytach. Aby rozróżnić, czy to Ty, czy nie Ty wszedłeś akurat na stronę, musisz mieć utworzone specjalne Cookie, po którym będziesz rozpoznawany. Przygotowałem małego gotowca, który utworzy odpowiednie ciacho :) Ściągnij plik no-trace-me.zip na dysk, rozpakuj go i skopiuj jego zawartość na serwer do głównego katalogu Twojej strony. Następnie w przeglądarce przejdź pod następujący adres: http://twoja-domena/no-trace-me.php
Teraz trzeba nieco pogrzebać w kodzie strony i ciut inaczej wstawić kod śledzenia Analytics. Nie ma tutaj w sumie żadnej filozofii – wystarczy wstawić go w ten sposób:
<?php if(!isset($_COOKIE['no-trace-me'])) { ?> // twój kod śledzenia Google Analytics <?php } ?>
Całość powinna wyglądać mniej więcej tak:
<?php if(!isset($_COOKIE['no-trace-me'])) { ?> <script type="text/javascript"> var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); </script> <script type="text/javascript"> try { var pageTracker = _gat._getTracker("UA-123456-78"); pageTracker._trackPageview(); } catch(err) {} </script> <?php } ?>
Skrypt działa na bardzo prostej zasadzie. Sprawdza, czy istnieje ciasteczko no-trace-me. Jeżeli nie istnieje, wyświetla kod śledzenia.
Sposób trzeci: Ukrywanie kodu śledzenia w WordPress
Blogerzy, którzy prowadzą swoje blogi w oparciu o WordPress, mają jeszcze łatwiej. Mogą zastosować poprzedni sposób bez tworzenia jakichkolwiek Cookies. Wystarczy wstawić kod śledzenia w następujący sposób:
<?php global $current_user; get_currentuserinfo(); if($current_user->ID != 1) { ?> // twój kod śledzenia Google Analytics <?php } ?>
Skrypt sprawdza, czy użytkownik jest administratorem bloga (admin ma domyślnie ID=1). Jeżeli nie, to kod śledzenia ładuje się normalnie :) Dodam tylko, że jest to moja ulubiona metoda, którą stosuję na wszystkich moich blogach.
Sposób trzeci raz jeszcze (gdy jesteśmy sami;)
Tomasz Topa podsunął w komentarzach pewną modyfikację trzeciego sposobu, którą możemy zastosować, jeżeli tylko my mamy konto na danym blogu. Zasada działania jest prawie identyczna, z tą tylko różnicą, że skrypt nie sprawdza, czy jesteśmy adminem, lecz czy ogólnie jesteśmy zalogowani na blogu. Modyfikacja zaproponowana przez Tomka przedstawia się następująco:
<?php if(!is_user_logged_in()) { ?> // twój kod śledzenia Google Analytics <?php } ?>
I to by było na tyle…
I to by było na tyle. Każda z opisanych tutaj metod pozwoli całkowicie zignorować Twoje wizyty na stronie w statystykach Google Analytics. Zapewne istnieje jeszcze całe multum różnych metod pozwalających ukryć w statystykach ruch generowany przez nas samych, ale te trzy wydają mi się najlepsze. Ale jeżeli znasz jakiś równie dobry (lub lepszy) sposób, koniecznie podziel się nim z nami :)

No jest jeszcze oficjalny sposób: How to exclude traffic by Cookie Content
http://www.google.com/support/analytics/bin/answer.py?hl=en&answer=55481
Łukasz właśnie przedstawił te same sposoby :)
Do motywu WordPressowego pozwolę sobie tylko dodać, że łatwiej (przy odpowiednich warunkach, tzn. gdy tylko my=autorzy mamy konta na blogu) używać funkcji is_user_logged_in():
if (!is_user_logged_in())
{
// kod analytics
}
Nie trzeba kombinować z globalami i dodatkowymi zmiennymi.
Nie, Łukasz nie przedstawił drugiego googlowego sposobu, w którym ustawiamy filtr w Analytics na bazie cookie. Czytaj uważniej.
@Tomasz Topa – dobry pomysł, dobry :) Aż pozwolę sobie dopisać to do posta :)
Aaa… racja, racja. Pamiętałem, że opisywali tam metodę z IP i ciasteczkiem i jakoś sobie powiązałem ten motyw cookies.
Rozwiązanie @Tomka Topy jest idealne, a jeżeli się korzysta z pluginu Google Integration Toolkit, wraz z WordPress.com Stats, to łatwiej jest to zrobić na zasadzie: http://wklej.to/KPNK
Dzięki czemu większośc systemów analitycznych (wspomiany google, WordPress.com Stats) wogóle nie jest załączane do kodu źródłowego.
A ja, jako że nie lubię wyważać otwartych drzwi, wolę korzystać z prostych, gotowych rozwiązań, takich jak zaznaczenie w opcjach wtyczki WP Google Analytics:
Visits to ignore – Do not log Administrator.
Scarlett z miniPortalu pozdrawia. ;-)
Scarlett, kopę lat! :) A Ty wiesz, że nawet ostatnio byłem na Twoim blogu, Tylko w ogóle nie skojarzyłem go z Tobą? Zawsze było Scarlett i Scarlett, a imienia to nigdy nie poznałem ;p
Co do Twojego sposobu na poruszany temat – nie zawsze instalowanie wtyczek jest dobrym pomysłem. Szczególnie, jeżeli chodzi o taką pierdołę jak kod statystyk. Jest to już taki mały przerost formy nad treścią :)
Albo oszczędność czasu, jeśli ktoś często zmienia skórki i nie chce mu się za każdym razem wklejać swojego kodu śledzenia.
W sumie, to etap częstego zmieniania skórek chyba mam już za sobą od kiedy stworzyłam swoją własną, ale wcześniej zdarzyło mi się to kilka razy. Swoją drogą – ostatnia, którą miałam przed własną, to ta, której teraz używasz. ;-)
Trzeba będzie popróbować z tymi sposobami. Dzięki!
BDW jest już nowy kod GA zwany asynchronicznym.
Słyszałem już o tym asynchronicznym kodzie GA. Jednak u mnie stary kod nie spowalnia za bardzo wczytywania strony, tak więc póki nie dopracują tego nowego (ponoć jest w fazie beta), zostanę przy obecnym rozwiązaniu.
Hmm, u mnie po zastosowaniu III sposobu, w stopce, zostaje wyświetlony taki fragment:
ID != 1) { ?>:/
A czy mógłbyś Kolego wkleić większy kawałek kodu stopki na wklej.to? Najlepiej z już wstawionym trzecim sposobem :) Zaraz zobaczymy co nie gra.
http://wklej.to/QtKC
Kolego – bardziej zależało mi na tym, żeby zobaczyć co masz przed i za tym kodem z trzeciego sposobu:)
Właśnie wcieliłem w życie przykład Tomka Topy.
Uwaga, uwaga! Ogłaszam wszem i wobec, że podany wyżej sposób trzeci nie działa w WordPress 2.9. Dzisiaj nie mam już siły na dochodzenie co się zmieniło w nowej wersji, ale jutro postaram się rozwikłać tą zagadkę.
Twój trzeci sposób czy Tomka?
Mój trzeci sposób. Chociaż jeszcze dochodzę do tego, czy to oby na pewno przyczyna leży w tym miejscu. Na pewno po aktualizacji do 2.9 coś odbiło statystykom z Blogvertising (oparte na Piwik) i pokazują jakieś 5% rzeczywistego ruchu na obu moich blogach. W panelu GoogleAnalytics wszystko wygląda w porządku… – wychodziłoby więc na to, że wina leży jednak gdzie indziej, bo wszystkie kody statystyk mam wstawione w jednym miejscu (trzecim sposobem).
Dobra – fałszywy alarm ;) Okazało się, że problem leżał po stronie Blogvertising ;) Wszystkie z opisanych tutaj sposobów są w pełni kompatybilne z WordPress 2.9 :)