Referrer-Policy für WordPress konfigurieren

Schritt-für-Schritt: Referrer-Policy über die WordPress send_headers-Action, als Plugin oder per .htaccess setzen — mit Child-Theme-Hinweis und fertigen Code-Snippets.

WordPress · Schritt für Schritt

Referrer-Policy in WordPress

WordPress bietet drei Wege zur Implementierung der Referrer-Policy: Die functions.php des Child-Themes über die send_headers-Action, ein Security-Header-Plugin oder die .htaccess-Datei. Jede Methode hat Vor- und Nachteile — die Kombination aus functions.php und .htaccess bietet die umfassendste Abdeckung.

Wichtig: Änderungen in der functions.php des Haupt-Themes werden bei Theme-Updates überschrieben. Verwenden Sie immer ein Child-Theme oder ein Plugin, um Update-Sicherheit zu gewährleisten.

1 Schritt 1 von 4

send_headers-Action in functions.php

Die send_headers-Action ist der WordPress-spezifische Hook für HTTP-Header. Er wird ausgelöst, kurz bevor WordPress die Header an den Browser sendet — ideal für Security-Header. Fügen Sie den Code in die functions.php Ihres Child-Themes ein.

child-theme/functions.php send_headers
// functions.php des Child-Themes
function add_referrer_policy_header() {
    header('Referrer-Policy: strict-origin-when-cross-origin');
}
add_action('send_headers', 'add_referrer_policy_header');
Nur in der functions.php des Child-Themes eintragen — nicht im Haupt-Theme. Theme-Updates überschreiben die functions.php des Haupt-Themes und Ihre Änderungen gehen verloren.
child-theme/functions.php — Alle Security-Header Empfohlen
// functions.php — Alle empfohlenen Security-Header
function wolf_security_headers() {
    header('Referrer-Policy: strict-origin-when-cross-origin');
    header('X-Content-Type-Options: nosniff');
    header('X-Frame-Options: SAMEORIGIN');
    header('Permissions-Policy: camera=(), microphone=(), geolocation=()');
}
add_action('send_headers', 'wolf_security_headers');
2 Schritt 2 von 4

Plugin-Alternative

Wenn Sie kein Child-Theme nutzen oder Code-Änderungen vermeiden möchten, bieten WordPress-Security-Plugins eine komfortable Alternative. Diese Plugins ermöglichen die Konfiguration über das WordPress-Dashboard ohne Coding.

Headers Security Advanced & HSTS WP

Kostenlos, leichtgewichtig, spezialisiert auf Security-Header. Bietet ein Dashboard zum Aktivieren aller wichtigen Header inklusive Referrer-Policy.

Kostenlos

Solid Security (ehemals iThemes Security)

Umfangreiche Security-Suite mit Security-Header-Konfiguration. Empfehlenswert, wenn ohnehin ein Security-Plugin im Einsatz ist.

Pro-Version
Plugin oder functions.php?

Plugins fügen weitere Abhängigkeiten hinzu und können Konflikte verursachen. Für eine einzelne Funktion wie das Setzen eines Headers ist die functions.php-Methode schlanker. Nutzen Sie ein Plugin nur, wenn Sie ohnehin ein Security-Plugin verwenden oder kein Child-Theme haben.

3 Schritt 3 von 4

.htaccess-Fallback

Die .htaccess-Methode setzt den Header auf Apache-Ebene — unabhängig von PHP, WordPress oder Plugins. Sie ist die robusteste Methode und gilt auch für statische Assets (CSS, JS, Bilder), die nicht durch WordPress verarbeitet werden. Fügen Sie den Header-Block vor den WordPress-Rewrite-Regeln ein.

.htaccess (WordPress-Webroot) Apache-Ebene
# .htaccess — Fallback für alle Requests (auch statische Dateien)
# Ergänzt die WordPress-functions.php-Methode
<IfModule mod_headers.c>
    Header always set Referrer-Policy "strict-origin-when-cross-origin"
</IfModule>

# WordPress-Standard-Rewrite-Regeln (falls noch nicht vorhanden)
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Kombination empfohlen

functions.php deckt alle WordPress-generierten Seiten ab, .htaccess deckt statische Assets ab. Die Kombination beider Methoden bietet die umfassendste Abdeckung für eine WordPress-Site.

4 Schritt 4 von 4

Konfiguration verifizieren

Prüfen Sie nach der Implementierung mehrere URL-Typen: die Startseite, eine Produktseite (WooCommerce), den Login und statische Assets. Besonders bei der functions.php-Methode ist zu prüfen, ob der Header auch auf den Seiten erscheint, die PHP-Verarbeitung erfordern.

Terminal Verifizierung
# Referrer-Policy auf WordPress-Seite prüfen
curl -sI https://ihre-domain.de | grep -i referrer-policy

# Auch für WooCommerce-Produkt-Seiten prüfen:
curl -sI https://ihre-domain.de/shop/ | grep -i referrer-policy

# Erwartete Ausgabe:
# Referrer-Policy: strict-origin-when-cross-origin
Mit dem Wolf-Agents Web Security Check alle Security-Header Ihrer WordPress-Site automatisch prüfen lassen — inklusive Referrer-Policy, CSP, HSTS und weiteren 160 Kriterien.

Wie steht Ihre Domain bei Referrer-Policy?

Prüfen Sie es jetzt — kostenlos, ohne Registrierung, mit 166 Prüfpunkte.

Häufig gestellte Fragen

Wie setze ich die Referrer-Policy in WordPress?

Die zuverlässigste Methode: Fügen Sie den Code mit add_action und send_headers in die functions.php Ihres Child-Themes ein. Alternativ können Sie ein Plugin wie Headers Security Advanced & HSTS WP nutzen oder den Header direkt in der .htaccess setzen.

Warum muss ich ein Child-Theme verwenden?

Änderungen in der functions.php des Haupt-Themes werden bei jedem Theme-Update überschrieben. Ein Child-Theme bleibt bei Updates erhalten, weil es eine eigene functions.php hat. Wenn Sie kein Child-Theme nutzen möchten, verwenden Sie stattdessen ein Plugin.

Was ist die send_headers-Action?

Die send_headers-Action ist ein WordPress-Hook, der ausgelöst wird, kurz bevor WordPress die HTTP-Header sendet. Über add_action können Sie eigene Header hinzufügen. Diese Methode ist WordPress-spezifisch und funktioniert nur für Seiten, die durch WordPress verarbeitet werden — statische Dateien wie Bilder sind ausgenommen.

Gilt der Header auch für WooCommerce-Seiten?

Ja. Der send_headers-Hook gilt für alle von WordPress generierten Seiten — inklusive WooCommerce-Seiten. Statische Assets (CSS, JS, Bilder) werden nicht durch WordPress verarbeitet und erhalten den Header nicht. Für vollständige Abdeckung nutzen Sie die .htaccess-Methode.

Welche Plugins können die Referrer-Policy setzen?

Empfehlenswerte Plugins: "Headers Security Advanced & HSTS WP" (kostenlos, leichtgewichtig), "Solid Security" (ehemals iThemes Security, umfangreiche Suite), "WP-Headers" (spezialisiert auf Security-Header). Bei Plugin-Lösungen immer prüfen, ob der Header korrekt mit always gesetzt wird.

Was ist der Unterschied zwischen functions.php und .htaccess für WordPress?

functions.php setzt Header über PHP — funktioniert für alle WordPress-generierten Seiten, kann aber durch andere Plugins oder Themes beeinflusst werden. .htaccess setzt Header auf Apache-Ebene — gilt für alle Requests (auch statische Dateien) und ist unabhängig von PHP. .htaccess ist robuster, erfordert aber Apache mit mod_headers.

Kann der Header durch WordPress-Plugins überschrieben werden?

Ja. Wenn mehrere Plugins oder Themes denselben Header setzen, gilt der zuletzt gesetzte Wert. Prüfen Sie mit curl, welcher Header tatsächlich ausgeliefert wird. Die .htaccess-Methode umgeht dieses Problem, da sie auf Apache-Ebene nach PHP greift und PHP-Header überschreiben kann.