PageSpeed Insights i kod Google Analytics

pagespeed insights i kod google analytics

Ponieważ Google uznaje czas ładowania strony jako współczynnik systemu rankingowego Uważam za dość ironiczne, że kod Google Analitycs  jest uznawany za spowalniający stronę. Więc pytanie brzmi, co możemy z tym zrobić?

Technik ominięcia problemu jest wiele można np.

Moim zdaniem najlepszym rozwiązaniem jest wczytywanie pliku lokalnie z serwera. W tym celu przechodzimy na stronę:

https://www.google-analytics.com/analytics.js

Zapisz zawartość pliku na dysk komputera jako plik analytics.js Następnie prześlij go do głównego katalogu strony za pomocą klienta FTP lub przeglądarki plików na twoim serwerze.

Modyfikacja kodu analytics

Kolejnym etapem jest modyfikacja kodu śledzenia Google analytics, modyfikujemy fragment kodu odpowiedzialny za ładownie skryptu analytics.js:

(window,document,'script','https://www.google-analytics.com/analytics.js','ga');      

          Zmieniamy na:

(window,document,'script','http://adres-twojej-strony.pl/analytics.js','ga');

W tym momencie warto sprawdzić czy kod GA działa prawidłowo w tym celu proponuje zalogować się na stronę Google Analitycs i sprawdzić np. liczę użytkowników online.

Aktualizowanie kodu js

Kolejnym krokiem jest okresowa aktualizacja pliku w tym celu dodam na serwerze, krótki skrypt, który zapisuje go serwerze.

Skrypt pobierający i zapisujący plik anaytics.js na serwerze:

<?php define('DS', DIRECTORY_SEPARATOR); define('DC_ROOT',$_SERVER['DOCUMENT_ROOT']); // adres pliku do pobrania $analyticsjs = 'https://www.google-analytics.com/analytics.js'; // plik zapisywany lokalnie na serwerze $analyticsjsLocal = DC_ROOT.DS.'analytics.js';    $fp = fopen($analyticsjsLocal, 'w+');   $ch = curl_init();   curl_setopt($ch, CURLOPT_URL, $analyticsjs);   curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);   curl_setopt($ch, CURLOPT_RETURNTRANSFER, false);   curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);   curl_setopt($ch, CURLOPT_FILE, $fp);   curl_exec($ch);   curl_close($ch);   fclose($fp); ?> 

Może kod nie jest zbyt elegancki ale jest prosty i działa.

Dodanie zadania Cron na serwerze

Proponuje ustawić zadanie Cron początkowo na minutę aby zweryfikować czy skrypt jest faktycznie aktualizowany po weryfikacji, proponuje ustawić codzienną aktualizację pliku analytics.js:

Przykład Zadania:

wget -q http://adres-twojej-strony.pl/analyticsloader.php -O /dev/null 2>&1

lub:

lynx -dump http://adres-twojej-strony.pl/analyticsloader.php >/dev/null 2>&1