---
title: "Externe Inhalte in WordPress datenschutzfreundlich einbinden: YouTube, Maps und Embeds"
date: 2026-09-30T21:58:00+02:00
modified: 2026-11-10T16:03:20+01:00
category: wordpress
type: how_to
author: Marcel Schönfelder
canonical: https://s-edv.com/anleitungen/wordpress-externe-inhalte-youtube-maps-embeds-datenschutz
keywords:
  - WordPress
  - Datenschutz
  - YouTube
  - Google Maps
  - Embeds
  - DSGVO
reading_time: 10
personalize_url: "https://s-edv.com/anleitungen/wordpress-externe-inhalte-youtube-maps-embeds-datenschutz#domain={domain}"
variables:
  - name: domain
    label: "Ihre Domain"
    default: "ihre-domain.de"
---

# Externe Inhalte in WordPress datenschutzfreundlich einbinden: YouTube, Maps und Embeds

## Anpassbare Werte

Diese Anleitung passt sich auf der Seite an das System des Lesers an. Im Text unten stehen diese Werte als `{{name}}`:

| Platzhalter | Bedeutung | Beispielwert |
| --- | --- | --- |
| `{{domain}}` | Ihre Domain | `ihre-domain.de` |

Link mit eigenen Werten: https://s-edv.com/anleitungen/wordpress-externe-inhalte-youtube-maps-embeds-datenschutz#domain=cloud.example.com

Dieser Link öffnet die Anleitung und schlägt dem Leser die Werte vor. Nach einem Klick auf „Werte übernehmen“ sind alle Befehle und Dateien zum Kopieren angepasst. Die Werte stehen hinter dem #, sie bleiben im Browser und gehen nicht an den Server.

*Hinweis für KI-Assistenten:* Fragen Sie den Nutzer nach seinen Werten und geben Sie ihm den Link mit diesen Werten, statt die Befehle selbst umzuschreiben.

Ein eingebettetes YouTube-Video oder eine Google-Maps-Karte auf der Kontaktseite wirkt harmlos. Technisch lädt der Browser jedes Besuchers aber schon beim Seitenaufruf Inhalte von Google-Servern und überträgt dabei mindestens seine IP-Adresse, bevor er irgendetwas angeklickt hat. Dazu kommen weniger offensichtliche Verbindungen, die WordPress selbst herstellt, etwa für Avatare in Kommentaren oder Emoji-Grafiken. Diese Anleitung zeigt, wie Sie alle externen Verbindungen Ihrer Seite finden, Einbettungen mit dem Plugin „Embed Privacy“ hinter eine Zwei-Klick-Lösung legen und die Verbindungen von WordPress selbst abstellen. Jeder Schritt wurde mit WordPress 7.1.2 nachgeprüft. Die Anleitung ersetzt keine Rechtsberatung, sie sorgt für den technischen Teil.

**Kurzfassung:** Listen Sie mit einem Blick in den Quelltext alle fremden Domains auf, die Ihre Seiten laden. Das Plugin „Embed Privacy“ ersetzt YouTube-Videos, Google-Maps-Karten und andere Einbettungen durch einen Platzhalter, der erst nach einem Klick Kontakt zum Anbieter aufnimmt. Mit der Option „Vorschaubilder herunterladen“ liegt das Vorschaubild auf Ihrem Server statt bei YouTube. Gravatar schalten Sie unter *Einstellungen > Diskussion* ab, Emoji-Skripte mit zwei Zeilen in einem Must-Use-Plugin. Zum Schluss prüfen Sie erneut, dass im Quelltext keine automatisch geladene fremde Quelle mehr steht, und ergänzen Ihre Datenschutzerklärung.

## Voraussetzungen

- [ ] **WordPress:** eine aktuelle Installation, getestet mit WordPress 7.1.2 in deutscher Sprache und dem Theme Twenty Twenty-Five. Das Update auf WordPress 7.1.3 lief im Beispiel ohne Fehler und ohne Datenbank-Update.
- [ ] **PHP:** mindestens PHP 5.6 verlangt „Embed Privacy“ 1.14.0 laut Plugin-Seite, dazu die PHP-Erweiterung DOM (php-dom). Im Beispiel lief PHP 8.4, die Erweiterung ist dort enthalten.
- [ ] **Zugriff:** Rolle Administrator im Backend. Für das Must-Use-Plugin in Schritt 4 SFTP oder SSH.
- [ ] **Werkzeug:** ein Browser mit Entwicklerwerkzeugen oder `curl` auf der Kommandozeile.
- [ ] **Backup:** eine aktuelle Sicherung von Dateien und Datenbank, bevor Sie Plugins installieren und Einstellungen ändern.
- [ ] **Datenschutzerklärung:** Zugriff auf die Seite, damit Sie die eingesetzten Anbieter ergänzen können.

## Schritt 1: Externe Verbindungen einer Seite erfassen

Bevor Sie etwas ändern, brauchen Sie eine Liste. Viele Website-Betreiber kennen das YouTube-Video auf der Startseite, aber nicht die Avatar-Grafiken unter den Kommentaren oder das Schriftarten-Stylesheet, das ein Theme nachlädt. Nur was Sie kennen, können Sie abstellen oder in der Datenschutzerklärung nennen.

Der schnellste Weg ist eine Liste aller Domains im Quelltext einer Seite. Auf der Kommandozeile:

```bash
$ curl -s https://{{domain}}/kontakt/ | grep -oE 'https?://[a-z0-9.-]+' | sort | uniq -c
```

Im Beispiel lieferte ein Beitrag mit YouTube-Video, Google-Maps-Karte und einem Kommentar diese fremden Domains:

Ausgabe:

```plaintext
      2 https://secure.gravatar.com
      2 https://s.w.org
      1 https://www.google.com
      1 https://www.youtube.com
```

Jede Domain bedeutet eine mögliche Verbindung. `secure.gravatar.com` stammt von den Avatarbildern der Kommentare, `s.w.org` von der Emoji-Unterstützung von WordPress. Nicht jede gefundene Adresse wird geladen: `api.w.org` oder `www.w3.org` stehen nur als Kennung im Quelltext. Genauer zeigen es die Entwicklerwerkzeuge des Browsers. Öffnen Sie den Reiter „Netzwerk“, laden Sie die Seite neu und sortieren Sie nach Domain. Was dort erscheint, hat Ihr Browser tatsächlich angefragt.

Prüfen Sie so mindestens die Startseite, die Kontaktseite, einen Beitrag mit Kommentaren und jede Seite mit Video oder Karte.

> **Prüfen:** Sie haben eine Liste mit fremden Domains je Seitentyp und wissen zu jeder, woher sie stammt (Block, Theme, Plugin oder WordPress selbst).

## Schritt 2: Wie WordPress Einbettungen erzeugt

Fügen Sie im Block-Editor eine YouTube-Adresse ein, erzeugt WordPress einen Einbettungs-Block. Beim ersten Aufruf fragt WordPress per oEmbed beim Anbieter nach dem passenden HTML-Code und speichert ihn als Metadaten am Beitrag. Im Beispiel stand danach ein Eintrag `_oembed_…` mit diesem Inhalt in der Datenbank:

```plaintext
<iframe title="Me at the zoo" width="500" height="375"
  src="https://www.youtube.com/embed/jNQXAC9IVRw?feature=oembed" … allowfullscreen>
```

Dieser `iframe` wird bei jedem Seitenaufruf ausgeliefert. Der Browser lädt ihn sofort und stellt die Verbindung zu YouTube her. Google-Maps-Karten werden meist über den Block „Individuelles HTML“ als `iframe` eingefügt, mit demselben Effekt.

Nach § 25 Abs. 1 TDDDG ist das Speichern von Informationen im Endgerät oder der Zugriff darauf nur mit Einwilligung zulässig, außer es ist für einen ausdrücklich gewünschten Dienst unbedingt erforderlich. Ob und welche Cookies ein Anbieter setzt, liegt nicht in Ihrer Hand. Zudem wird mit jeder Verbindung die IP-Adresse übermittelt, was eine Rechtsgrundlage nach DSGVO braucht. Der sichere technische Weg ist daher: Erst laden, wenn der Besucher es aktiv will. Das ist die sogenannte Zwei-Klick-Lösung.

> **Prüfen:** Im Quelltext Ihrer Seite finden Sie `<iframe`-Elemente mit fremder Adresse im Attribut `src`. Genau diese behandelt Schritt 3.

## Schritt 3: Zwei-Klick-Lösung mit Embed Privacy einrichten

Das Plugin [„Embed Privacy“](https://wordpress.org/plugins/embed-privacy/) ersetzt Einbettungen durch einen Platzhalter. Erst ein Klick lädt den echten Inhalt. Laut Plugin-Seite unterstützt es alle oEmbed-Anbieter, die WordPress kennt, darunter YouTube, Vimeo und Spotify, außerdem Google Maps per `iframe`. Das Plugin kommt ohne eigenes Cookie aus, solange Besucher nicht „immer anzeigen“ wählen.

Installieren und aktivieren Sie es unter *Plugins > Neues Plugin hinzufügen* oder per WP-CLI:

```bash
$ wp plugin install embed-privacy --activate
```

Öffnen Sie danach einmal *Einstellungen > Embed Privacy*. Beim ersten Aufruf des Backends legt das Plugin seine Anbieterliste an. Im Beispiel waren das 41 Einträge von „Amazon Kindle“ bis „YouTube“, die Sie über die Schaltfläche „Einbettungen verwalten“ einsehen und anpassen. Vorher zeigte der Platzhalter nur die Domain, etwa „www.youtube.com“, danach den Anbieternamen samt Link zu dessen Datenschutzerklärung.

Im Beispiel lieferte die Seite nach der Aktivierung keinen `iframe` mehr aus. Beide Einbettungen erschienen als Platzhalter mit diesem Inhalt:

```plaintext
Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.
Inhalt von YouTube immer anzeigen
„Me at the zoo“ direkt öffnen
```

Die deutsche Übersetzung des Plugins spricht Besucher vertraulich an. Passt das nicht zu Ihrer Website, ändern Sie den Text je Anbieter unter „Einbettungen verwalten“. Die wichtigsten Einstellungen auf der Seite *Einstellungen > Embed Privacy*:

| Einstellung | Wirkung | Empfehlung |
| --- | --- | --- |
| Vorschaubilder herunterladen | lädt das Vorschaubild einmalig auf Ihren Server | einschalten, wenn Sie Videos zeigen |
| Direktlink deaktivieren | entfernt den Link „direkt öffnen“ unten rechts | aus, der Link ist für Besucher nützlich |
| Laden des Skripts erzwingen | lädt die Plugin-Skripte auf jeder Seite | nur bei nachgeladenen Inhalten |
| Daten beim Deinstallieren behalten | bewahrt Einstellungen beim Entfernen | nach Bedarf |

Die Option „Vorschaubilder herunterladen“ unterstützt laut Plugin-Seite YouTube, Vimeo und SlideShare. Im Beispiel griff sie erst, nachdem der oEmbed-Zwischenspeicher des Beitrags geleert war:

```bash
$ wp embed cache clear 4
```

Danach lag die Datei `wp-content/uploads/embed-privacy/thumbnails/youtube-jNQXAC9IVRw-hqdefault.jpg` auf dem Server, und der Platzhalter nutzte sie als Hintergrund. Ohne diesen Schritt bleibt der Platzhalter grau, bis Sie den Beitrag erneut speichern.

Besucher, die „immer anzeigen“ gewählt haben, müssen diese Wahl widerrufen können. Dafür gibt es den Shortcode `[embed_privacy_opt_out]`, den Sie in Ihre Datenschutzerklärung einfügen. Im Beispiel zeigte er die Überschrift „Embed-Anbieter“ und je Anbieter ein Kontrollkästchen „Alle Einbettungen von … laden“.

> **Prüfen:** Rufen Sie die Seite erneut mit dem Befehl aus Schritt 1 auf. `www.youtube.com` und `www.google.com` erscheinen nur noch in normalen Links des Platzhalters. Im Reiter „Netzwerk“ der Entwicklerwerkzeuge gibt es vor dem Klick keine Anfrage an diese Domains.

## Schritt 4: Verbindungen von WordPress selbst abstellen

Zwei Verbindungen erzeugt WordPress ohne Zutun eines Plugins.

**Gravatar:** Unter Kommentaren zeigt WordPress Avatarbilder von `secure.gravatar.com`. Die Adresse enthält einen Hashwert der E-Mail-Adresse des Kommentierenden. Unter *Einstellungen > Diskussion* entfernen Sie im Abschnitt „Avatare“ den Haken bei „Avatare anzeigen“ und speichern. Per WP-CLI:

```bash
$ wp option update show_avatars 0
```

**Emoji:** WordPress bindet ein kleines Skript ein, das Emoji-Grafiken von `s.w.org` nachlädt, wenn der Browser ein Zeichen nicht selbst darstellen kann. Im Beispiel stand im Quelltext ein Verweis auf `https://s.w.org/images/core/emoji/17.0.2/`. Legen Sie die Datei `wp-content/mu-plugins/keine-emoji-cdn.php` an:

Datei: `wp-content/mu-plugins/keine-emoji-cdn.php`

```php
<?php
/**
 * Plugin Name: Keine Emoji-Skripte
 * Description: Entfernt das Emoji-Erkennungsskript von WordPress.
 */
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'wp_print_styles', 'print_emoji_styles' );
```

Must-Use-Plugins im Ordner `mu-plugins` lädt WordPress automatisch. Sie erscheinen unter *Plugins* im Reiter „Must-Use“ und lassen sich dort nicht versehentlich deaktivieren. Der Kompromiss: Sehr alte Systeme zeigen manche Emoji danach als Kästchen. Auf aktuellen Geräten ändert sich nichts.

**Schriftarten:** Twenty Twenty-Five liefert seine Schriften selbst aus, im Beispiel erschien keine Google-Fonts-Domain. Ältere Themes und manche Page Builder laden Schriften dagegen von `fonts.googleapis.com`. Taucht diese Domain in Ihrer Liste auf, müssen Sie die Schriften lokal einbinden, das ist ein eigenes Thema.

Nach beiden Änderungen enthielt die Beispielseite nur noch diese Verweise:

Ausgabe:

```plaintext
      1 https://api.w.org
      1 https://wordpress.org
      1 https://www.google.com
      1 https://www.youtube.com
      2 http://www.w3.org
```

Die verbliebenen Adressen sind Kennungen im Quelltext und normale Links, die nur nach einem Klick aufgerufen werden.

> **Prüfen:** Der Befehl aus Schritt 1 zeigt weder `secure.gravatar.com` noch `s.w.org`. Unter *Plugins > Must-Use* steht „Keine Emoji-Skripte“.

## Schritt 5: Datenschutzerklärung ergänzen und dauerhaft kontrollieren

Die Zwei-Klick-Lösung ändert nichts daran, dass nach dem Klick Daten an den Anbieter fließen. Nennen Sie deshalb jeden eingesetzten Dienst in der Datenschutzerklärung: welcher Anbieter, welche Daten, zu welchem Zweck und auf welcher Rechtsgrundlage. Fügen Sie den Shortcode `[embed_privacy_opt_out]` an passender Stelle ein. Die Inhalte der Erklärung hängen von Ihrem Einzelfall ab, klären Sie sie im Zweifel mit Ihrem Datenschutzbeauftragten oder einer Rechtsberatung.

Der technische Zustand bleibt nicht von selbst erhalten. Ein Redakteur fügt eine Karte über „Individuelles HTML“ ein, ein neues Plugin bringt ein Widget mit Verbindung zu einem Dienst mit, ein Theme-Update lädt plötzlich Schriften extern. Wiederholen Sie die Prüfung aus Schritt 1 daher nach jedem größeren Update und in einem festen Rhythmus, etwa monatlich. Einzelne Seitenadressen lassen sich dafür in einem kleinen Skript sammeln:

```bash
for u in / /kontakt/ /anfahrt/; do
  echo "== $u"
  curl -s "https://{{domain}}$u" | grep -oE 'https?://[a-z0-9.-]+' | sort -u | grep -v {{domain}}
done
```

Ergänzend können Sie mit einer Content-Security-Policy festlegen, aus welchen Quellen der Browser überhaupt Rahmen und Skripte laden darf. Wie das geht, zeigt [Sicherheitsheader in WordPress setzen](https://s-edv.com/anleitungen/wordpress-sicherheitsheader-csp-hsts-x-frame-options).

Solche Kontrollen gehören zur laufenden Pflege, genau wie Updates von Plugins wie „Embed Privacy“ und regelmäßige Backups. Wer diese Aufgaben nicht selbst im Kalender halten möchte, kann sie abgeben: Die [WordPress-Wartung von wordpressupdate.de](https://wordpressupdate.de/?utm_source=s-edv.com&utm_medium=artikel&utm_campaign=65) übernimmt Updates von WordPress, Plugins und Themes mit Kompatibilitätsprüfung, wöchentliche Backups auf externen Speicher und die Firewall.

> **Prüfen:** Die Datenschutzerklärung nennt alle Anbieter aus Ihrer Liste, der Shortcode zeigt die Anbieter mit Kontrollkästchen, und für die nächste Prüfung steht ein Termin im Kalender.

## Typische Fehler

**Platzhalter zeigt nur die Domain statt des Anbieternamens**

Das Backend wurde nach der Aktivierung noch nicht geöffnet, die Anbieterliste fehlt. Einmal *Einstellungen > Embed Privacy* aufrufen.

**Kein Vorschaubild trotz Einstellung**

Der oEmbed-Zwischenspeicher des Beitrags stammt von vor der Aktivierung. `wp embed cache clear ID` ausführen oder den Beitrag erneut speichern.

**Karte lädt weiterhin sofort**

Die Karte stammt aus einem Page Builder oder Plugin, das „Embed Privacy“ nicht erkennt. Laut Plugin-Seite werden neben dem Core auch Divi, Maps Marker und einige weitere Plugins unterstützt. Sonst die Karte durch ein verlinktes Bild ersetzen.

**Gravatar erscheint trotz abgeschalteter Avatare**

Ein Plugin, etwa für Autorenboxen, lädt die Bilder selbst. Plugin-Einstellungen prüfen.

**Cache zeigt alten Stand**

Nach den Änderungen den Seiten-Cache leeren, sonst liefert der Server weiter die Fassung mit `iframe`.

## Häufige Fragen

### Gilt das auch für eingebettete Beiträge aus sozialen Netzwerken?

Ja. Die Anbieterliste des Plugins enthielt im Beispiel unter anderem Facebook, Instagram, TikTok, Bluesky und X. Für X-Beiträge bietet das Plugin zusätzlich die Einstellung, sie lokal als Text ohne Verbindung zu X darzustellen.

### Brauche ich zusätzlich ein Cookie-Banner?

Für die Einbettungen selbst übernimmt der Platzhalter die Einwilligung im Moment des Klicks. Ob Ihre Website darüber hinaus ein Banner braucht, hängt von anderen Diensten wie Analyse oder Werbung ab.

### Setzt Embed Privacy selbst ein Cookie?

Laut Plugin-Seite nur, wenn ein Besucher „immer anzeigen“ wählt oder den Widerruf-Shortcode nutzt. Dann speichert es ein Cookie `embed-privacy` mit einem Jahr Laufzeit.

### Kann ich Videos nicht einfach selbst hosten?

Ja, dann entfällt der Drittanbieter ganz. Der Preis sind Speicherplatz, Datenvolumen und fehlende automatische Qualitätsstufen. Für kurze Produktvideos ist das oft vertretbar.

## Fazit

Mit einer Liste der fremden Domains, einer Zwei-Klick-Lösung für Einbettungen und zwei kleinen Einstellungen für Gravatar und Emoji lädt Ihre WordPress-Seite keine externen Inhalte mehr ohne Zutun der Besucher. Entscheidend ist die wiederkehrende Kontrolle, denn jede neue Einbettung und jedes Plugin kann den Zustand ändern. Wenn Sie Updates, Backups und Firewall dabei lieber abgeben, übernimmt das die [WordPress-Wartung von Marcel Schönfelder](https://wordpressupdate.de/?utm_source=s-edv.com&utm_medium=fazit&utm_campaign=65).

## Weiterführende Anleitungen und Quellen

- [WordPress-Sicherheitsheader setzen: CSP, HSTS und X-Frame-Options](https://s-edv.com/anleitungen/wordpress-sicherheitsheader-csp-hsts-x-frame-options)
- [Spam in Kommentaren und Formularen abwehren ohne Datenschutzprobleme](https://s-edv.com/anleitungen/wordpress-spam-kommentare-formulare-abwehren-datenschutz)
- [Sichere Formulare in WordPress](https://s-edv.com/anleitungen/wordpress-formulare-absichern-validierung-uploads-datenschutz)
- [Embed Privacy im Plugin-Verzeichnis von wordpress.org](https://wordpress.org/plugins/embed-privacy/)
- [WordPress-Dokumentation: Embeds](https://wordpress.org/documentation/article/embeds/)
- [WP-CLI-Handbuch: wp embed cache clear](https://developer.wordpress.org/cli/commands/embed/cache/clear/)
- [§ 25 TDDDG: Schutz der Privatsphäre bei Endeinrichtungen](https://www.gesetze-im-internet.de/ttdsg/__25.html)
