Jak dodać własny kod Google Analytics 4 w functions.php (bez wtyczek)

Cel: W tym poradniku przedstawione jest, jak dodać kod GA4 do WordPressa bez instalowania wtyczek — wyłącznie za pomocą snippetu w functions.php. Snippet wstrzykuje skrypt gtag.js w sekcji <head>, pomija panel administracyjny i (opcjonalnie) wyklucza wizyty administratorów, aby nie zakłócać statystyk.

Co będzie potrzebne?

  • Dostęp do plików motywu (np. przez FTP/SFTP lub edytor plików w panelu hostingu).
  • ID pomiaru GA4 (format: G-XXXXXXXXXX) z panelu Google Analytics.
  • Motyw potomny (zalecane), aby aktualizacje motywu nie nadpisały zmian.

Krok 1: Skopiowanie snippetu do functions.php

Poniższy kod należy wkleić na końcu pliku functions.php motywu potomnego i podmienić G-XXXXXXXXXX na własne ID pomiaru GA4.

<?php
/**
 * Wstrzyknięcie GA4 (gtag.js) w <head> na front-endzie bez wtyczek.
 * - Nie ładuje się w panelu /wp-admin
 * - Domyślnie pomija administratora (można wyłączyć warunek, jeśli wymagane jest mierzenie także własnych wizyt)
 * - Anonimizuje IP
 */

add_action( 'wp_head', 'prolink_add_ga4_to_head', 20 );
function prolink_add_ga4_to_head() {
    if ( is_admin() ) {
        return;
    }

    // (Opcjonalnie) pominięcie administratorów
    if ( is_user_logged_in() && current_user_can( 'manage_options' ) ) {
        return;
    }

    $measurement_id = 'G-XXXXXXXXXX';

    echo "\n<!-- Google Analytics 4 (gtag.js) -->\n";
    echo "<script async src=\"https://www.googletagmanager.com/gtag/js?id={$measurement_id}\"></script>\n";
    echo "<script>\n";
    echo "  window.dataLayer = window.dataLayer || [];\n";
    echo "  function gtag(){dataLayer.push(arguments);} \n";
    echo "  gtag('consent', 'default', {\n";
    echo "    'analytics_storage': 'denied',\n";
    echo "    'ad_storage': 'denied',\n";
    echo "    'ad_user_data': 'denied',\n";
    echo "    'ad_personalization': 'denied'\n";
    echo "  });\n";
    echo "  gtag('js', new Date());\n";
    echo "  gtag('config', '{$measurement_id}', {\n";
    echo "    'anonymize_ip': true\n";
    echo "  });\n";
    echo "</script>\n";
}

Dlaczego wp_head?

Google zaleca umieszczanie gtag.js w sekcji <head> strony, aby pomiary ładowały się możliwie wcześnie. Hook wp_head wstrzykuje skrypt właśnie w tym miejscu.

Krok 2: (Opcjonalnie) aktywacja po akceptacji cookies

Jeśli strona wykorzystuje baner cookies/Consent Management Platform (CMP), po akceptacji zgody można zaktualizować ustawienia do granted. Przykładowy kod JavaScript:

gtag('consent', 'update', {
  'analytics_storage': 'granted',
  'ad_storage': 'denied',
  'ad_user_data': 'denied',
  'ad_personalization': 'denied'
});

gtag('config', 'G-XXXXXXXXXX');

Krok 3: Testowanie wdrożenia

  1. Wyczyść cache przeglądarki i ewentualny cache strony.
  2. Otwórz stronę w trybie incognito, aby sprawdzić, czy kod jest obecny w źródle strony.
  3. W Google Analytics sprawdź raport „Czas rzeczywisty”, aby zweryfikować, czy odsłony są zliczane.

Alternatywa: użycie kolejki skryptów WordPress

Skrypt GA4 można dodać także za pomocą wp_enqueue_scripts i wp_add_inline_script:

<?php
add_action( 'wp_enqueue_scripts', function () {
    if ( is_admin() ) { return; }
    if ( is_user_logged_in() && current_user_can( 'manage_options' ) ) { return; }

    $measurement_id = 'G-XXXXXXXXXX';

    wp_enqueue_script(
        'ga4',
        'https://www.googletagmanager.com/gtag/js?id=' . rawurlencode( $measurement_id ),
        [],
        null,
        false
    );

    $inline = "
      window.dataLayer = window.dataLayer || [];
      function gtag(){dataLayer.push(arguments);}
      gtag('consent', 'default', {
        'analytics_storage': 'denied',
        'ad_storage': 'denied',
        'ad_user_data': 'denied',
        'ad_personalization': 'denied'
      });
      gtag('js', new Date());
      gtag('config', '{$measurement_id}', { 'anonymize_ip': true });
    ";
    wp_add_inline_script( 'ga4', $inline );
}, 20 );

Najczęstsze błędy

  • Podwójna implementacja: jednoczesne włączenie snippetu i wtyczki GA może zawyżyć statystyki.
  • Błędne ID: należy użyć aktualnego identyfikatora GA4 (zaczynającego się od G-).
  • Lokalizacja: skrypt powinien znajdować się w <head>, aby działał poprawnie.
  • Cache: brak odświeżenia cache po wdrożeniu powoduje, że kod nie jest widoczny od razu.

Podsumowanie

Dodanie kodu Google Analytics 4 w pliku functions.php jest prostym i skutecznym sposobem na wdrożenie analityki bez instalowania dodatkowych wtyczek. Dzięki temu rozwiązaniu można zachować lekkość strony i pełną kontrolę nad tym, jakie dane są przesyłane do Google Analytics.

Zamów wycenę
Polityka prywatności | Regulamin
Pro-link 2005-2020