Einführung
Auf vielen Websites werden Vimeo Videos eingebunden.
Nutzt man hierzu die in WordPress (Classic Editor, Gutenberg) oder Page Buildern (Beaver, Bricks, Divi, Elementor, Oxygen, WPBakery und viele andere) vorgesehenen Standard-Verfahren und fragt nicht vorher die Zustimmung des Besuchers ab, verstößt man in der EU gegen die Datenschutzrichtlinien (DSGVO, GDPR): Bei der Anzeige einer Seite, die ein Vimeo Video enthält, wird automatisch eine Verbindung zu den Vimeo Servern aufgebaut, um das Vorschaubild zu laden. Dabei werden die IP-Adresse, Browser-Informationen und weitere Daten des Besuchers, und damit personenbezogene Information, an Vimeo übertragen. Das ist nicht erlaubt ohne explizite Zustimmung.
Wie kann man also Vimeo Videos auf der Website DSGVO-konform einbinden?
Lösung
MA GDPR Vimeo stellt einen WordPress Shortcode zur Verfügung, der eine DSGVO-konforme und gleichzeitig möglichst einfache und effiziente Einbettung von Vimeo Videos ermöglicht.
Mittels dieses Shortcodes wird das Vorschaubild für das Video bereits durch den eigenen Server von Vimeo abgerufen und lokal auf dem eigenen Server zwischengespeichert. Dem Browser des Besuchers wird dieses lokale Vorschaubild übergeben, zusammen mit einem Hinweistext zu den Datenschutzrichtlinien. Der Browser des Besuchers braucht also zunächst keine Verbindung zu Vimeo aufzubauen. Erst nach Klick durch den Besucher werden das eigentliche Video, der benötigte Player und weitere Daten von Vimeo geladen. Dieses Verfahren ist DSGVO-konform, weil der Besucher zunächst aktiv bestätigen muss, dass er das Video von Vimeo laden will.
Für den Abruf des Videos wird außerdem ein „Do Not Track“ Parameter (dnt=1) gesetzt und so die Verwendung von Cookies seitens Vimeo vermieden.
MA GDPR Vimeo wirkt sich auch deutlich positiv auf die bekannten Speed Test Tools (Page Speed Insights, GTMetrix, …) aus, da keine Daten von externen Servern geladen werden, bevor der Besucher dem nicht zugestimmt hat.
Warum als Shortcode?
Die Verwendung eines Shortcodes ist die vielseitigste Methode, um die Verfügbarkeit im gesamten WordPress-Ökosystem sicherzustellen.
- Universelle Kompatibilität: Shortcodes funktionieren nahtlos im Classic Editor, in Gutenberg (Block-Editor) und in beliebten Page-Buildern wie Beaver, Bricks, Divi, Elementor, Oxygen, WPBakery und vielen anderen.
- Theme-Flexibilität: Im Gegensatz zu fest programmierten Skripten können Shortcodes in Widgets, Seitenleisten oder benutzerdefinierten Vorlagen platziert werden, wodurch die Funktionalität unabhängig vom Layout des Themes gewährleistet ist.
- Einfachheit & Geschwindigkeit: Es bietet eine schlanke „Kopieren-Einfügen“-Lösung, mit der komplexe Logik ausgelöst werden kann, ohne eine einzige Zeile Code schreiben zu müssen.
- Zukunftssicher: Selbst wenn das Theme oder der Editor gewechselt wird, bleibt der Shortcode funktionsfähig, sodass die Videos ohne zusätzliche Konfiguration sichtbar bleiben.
- Detaillierte Steuerung: Dank dutzender Parameter innerhalb des Shortcodes können Aussehen und Funktionalität – wie Abmessungen, Texte, Metadaten – für jedes einzelne Video präzise gesteuert werden.
Shortcode
Die einfachste und kürzeste Syntax für den Shortcode lautet:
[ma-gdpr-vimeo video="814361316"]
wobei 814361316 hier für die ID des Vimeo Videos steht. Die ID kann man sich ganz einfach aus dem URL zu dem Vimeo Video kopieren:

Der Shortcode kann ganz einfach direkt im Classic Editor oder in Gutenberg als eigener Absatz geschrieben werden.
In Gutenberg gibt es alternativ einen Shortcode Block.
Auch in Page Buildern steht dafür meist ein eigenes Element „Shortcode“ zur Verfügung.
Dieser Shortcode erzeugt folgende Ausgabe:

Das Vorschaubild wird mittig durch den von Vimeo bekannten Play-Button überlagert.
Unten sieht der Besucher in einem farblich abgehobenen Balken einen Hinweistext zum Datenschutz.
Vorschaubild
Das Vorschaubild wird einmalig von Vimeo geladen, auf dem eigenen Server im Cache gespeichert, und von hier an den Besucher ausgeliefert.
MA GDPR Vimeo fragt das Vorschaubild in verschiedenen Größen ab: 1280, 1024, 960, 768, 640 und 480 Pixel Breite.
Vimeo liefert nicht immer all diese Größen zurück, und manchmal auch alternativ verfügbare Größen, wie 295 Pixel.
MA GDPR Vimeo erkennt und behandelt dies entsprechend.
Hinweis:
- Dem Browser werden alle Bildgrößen zur Auswahl angeboten. Der Browser entscheidet selbst, welche Bildgröße geladen wird.
Cache
Die von Vimeo geladenen Vorschaubilder werden automatisch am Server im Verzeichnis /wp-content/uploads/ma-gdpr-vimeo/ gespeichert. Das Verzeichnis wird automatisch angelegt, falls es noch nicht existiert. Für jede Video-ID wird darin ein eigenes Unterverzeichnis angelegt.
Shortcode Parameter
Damit der Shortcode funktioniert, muss das gewünschte Vimeo Video zwingend mit dem Shortcode-Parameter video angegeben werden.
Daneben erlaubt der Shortcode noch einige weitere Parameter, die nachfolgend erklärt sind.
video
Mit dem Parameter video wird die Vimeo ID oder der Vimeo URL des gewünschten Videos angegeben.
Die Video ID besteht aus Zahlen und ist üblicherweise zwischen 6 und 12 Stellen lang..
Bei Angabe eines URL wird die ID daraus automatisch ermittelt.
Beispiele:

[ma-gdpr-vimeo video="814361316"]

[ma-gdpr-vimeo video="https://vimeo.com/814361316"]
aspect-ratio
Das Standard-Seitenverhältnis für Vimeo Videos ist 16:9.
Der Parameter aspect-ratio erlaubt die Verwendung eines davon abweichenden Seitenverhältnisses, wie z.b. 4:3 oder 1:1 (quadratisch).
Es können hier beliebige Seitenverhältnisse angegeben werden, solange die Syntax mit zwei Zahlen durch Doppelpunkt oder Schrägstrich getrennt eingehalten wird: „Breite:Höhe“ oder „Breite/Höhe“
Das Vorschaubild und der Vimeo Player werden automatisch in das hier angegebene Seitenverhältnis eingepasst. Das Video selbst wird im Original-Seitenverhältnis angezeigt, eventuell dann mit schwarzen Balken.
Beispiele:

[ma-gdpr-vimeo video="814361316" width="350px" aspect-ratio="1:1"]

[ma-gdpr-vimeo video="814361316" width="200px" aspect-ratio="9:16"]
gdpr-text
MA GDPR Vimeo stellt den Hinweis-Text zu den Datenschutzrichtlinien in verschiedenen Sprachen bereit:
| Sprache | Text |
|---|---|
| DA | Når du har trykket, vil videoen blive indlæst fra Vimeo’s servere. Se vores {privatlivspolitik} for flere informationer. |
| DE | Bei Klick wird dieses Video von den Vimeo Servern geladen. Details siehe {Datenschutzerklärung}. |
| EN | When clicked, this video is loaded from Vimeo servers. See our {privacy policy} for details. |
| ES | Al hacer clic, este vídeo se carga desde los servidores de Vimeo. Consulte la {política de privacidad} para más detalles. |
| FI | Klikattuasi, tämä video ladataan Vimeon palvelimilta. Katso lisätietoja meidän {tietosuojaselosteesta}. |
| FR | En cliquant, cette vidéo est chargée depuis les serveurs de Vimeo. Voir la {politique de confidentialité}. |
| HU | Kattintás után ez a videó a Vimeo szervereiről kerül lejátszásra. A részletekért olvassa el az {Adatkezelési Tájékoztatót} oldalt. |
| IT | Quando si clicca, questo video viene caricato dai server di Vimeo. Vedere {l’informativa sulla privacy} per i dettagli. |
| JA | クリックすると、この動画が Vimeo サーバーから読み込まれます。詳細については、{プライバシー ポリシー} をご覧ください。 |
| NL | Na het klikken wordt deze video geladen vanaf de servers van Vimeo. Zie ons {privacybeleid} voor meer informatie. |
Die Sprache wird basierend auf der Sprache der Website oder Seite ausgewählt. Polylang wird unterstützt.
Wenn kein Standardtext für die Sprache der Seite verfügbar ist, wird stattdessen Englisch verwendet.
Der Begriff in geschweiften Klammern wird durch einen Link zur in WordPress konfigurierten Seite zur Datenschutzerklärung (Einstellungen > Datenschutz) ersetzt, wobei der geklammerte Begriff als Link-Text verwendet wird.
Der Hinweis-Text kann per Parameter gdpr-text an die eigenen Anforderungen, beispielsweise andere Sprachen, angepasst werden.
Beispiel:
[ma-gdpr-vimeo video="814361316" gdpr-text="Bitte lesen Sie vor dem Klick zuerst die {Datenschutzerklärung}."]

Der Parameter gdpr-text kann auch gezielt gelöscht werden. In diesem Fall wird dann kein Hinweis-Text angezeigt.
Dies kann beispielsweise sinnvoll sein, wenn mehrere Videos auf einer Seite angezeigt werden, und der Hinweis-Text manuell ein mal an zentraler Stelle und nicht bei jedem einzelnen Video angezeigt werden soll.
[ma-gdpr-vimeo video="814361316" gdpr-text=""]

gdpr-text-size
Der Hinweistext wird standardmäßig in der Schriftgröße 0.7em, also 70% der für diesen Block definierten Textgröße, ausgegeben.
Mit dem Parameter gdpr-text-size an die eigenen Wünsche angepasst werden. Erlaubt sind alle gültigen CSS Angaben zur Text-Größe.
Beispiel:
[ma-gdpr-vimeo video="814361316" gdpr-text-size="20px"]

notice-style
Das Design des Datenschutzhinweises kann bei Bedarf angepasst werden.
Weiße Schrift auf blauem Balken? Kein Problem!
Beispiel:
[ma-gdpr-vimeo video="814361316" notice-style="background-color:blue; color:white"]

notice-class
Mit einer eigenen CSS Klasse kann das noch gezielter erfolgen. So kann man z.B. auch das Design des Links steuern:
Beispiel:
<style>
body .my-notice-class {
background-color: blue;
color:white;
}
body .my-notice-class a {
font-weight: bold;
font-size: 110%;
}
</style>
[ma-gdpr-vimeo video="814361316" notice-class="my-notice-class"]

width
Im Standard wird für den Video-Block eine Breite von 100% gesetzt. Der Video-Block nimmt dadurch die gesamte Breite des umschließenden Blocks, z.B. eines DIVs oder eine Spalte ein. Der Standard von 100% erlaubt eine einfache Anpassung der Responsive-Ansicht durch das übergeordnete Seitenelement.
Die Höhe errechnet sich automatisch aus der Breite und dem Seitenverhältnis.
Bei Bedarf kann die Breite mit dem Parameter width geändert werden. Erlaubt sind alle gültigen CSS Angaben zur Breite eines Elements.
Beispiel:
[ma-gdpr-vimeo video="814361316" width="300px"]

Hinweis: Ich empfehle, die Breite auf dem Standardwert von 100% zu belassen und stattdessen den umschließenden Block für Responsive Viewports mit CSS-Medienabfragen zu gestalten.
alt / title
Die Parameter alt und title setzen die entsprechenden HTML Attribute für das Vorschaubild.
Das Attribut alt dient der Unterstützung von Suchmaschinen und der Barrierefreiheit.
Das Attribut title stellt den Tooltip Text bereit.
[ma-gdpr-vimeo video="814361316" alt="Ein Video vom Planeten Erde" title="Planet Erde"]

Es können hier auch Vimeo Metadaten eingeblendet werden.
thumbnail
Mit dem Parameter thumbnail kann ein eigenes statt des von Vimeo geladenen Vorschaubildes verwendet werden.
Hier kann entweder ein vollständiger URL zu einem Bild angegeben werden, oder die Medien-ID eines Bildes, das bereits in WordPress hochgeladen wurde.

[ma-gdpr-vimeo video="814361316" thumbnail="/wp-content/uploads/2026/04/ma-gdpr-vimeo_custom-thumbnail.jpg"]

[ma-gdpr-vimeo video="814361316" thumbnail="3871"]
(Photo Credit: NASA/Reid Wiseman)
title-text
MA GDPR Vimeo zeigt standardmäßig das Vorschau-Bild von Vimeo, aber keinen Titel zu dem Video.
Mit dem Parameter title-text kann ein Titel über dem Vorschaubild angezeigt werden.
[ma-gdpr-vimeo video="814361316" title-text="Planet Erde"]

Der Titel wird standardmäßig oben links angezeigt, weiße Schrift in Standardgröße, mit einem subtilen Schatten, damit der Text auch auf hellen Vorschaubildern lesbar ist.
Es können hier auch Vimeo Metadaten eingeblendet werden.
title-style
Der Standard Style für den Titel ist definiert als:
.ma-gdpr-vimeo-title {
position:absolute;
width: 100%;
top: 1em;
padding: 0 1em;
color: white;
text-shadow: black 1px 1px 2px;
}
Über den Parameter title-style können Positionierung und Design des Titels angepasst werden.
Positionierung

[ma-gdpr-vimeo video="814361316"title-text="Planet Erde" title-style="top:unset; bottom:30%; text-align:center"]
Design

[ma-gdpr-vimeo video="814361316" title-text="Planet Erde" title-style="top:1rem; font-size:2em; color:red; text-align:center;"]
title-class
Zur globalen Steuerung von Positionierung und Design der Titel kann mit dem Parameter title-class auch eine Klasse festgelegt werden.
Beispiel:
<style>
body .my-video-title-class {
top: 1rem;
font-size: 1.5em;
line-height: 1;
color: blue;
text-align: center;
}
body .my-video-title-class span {
display: inline-block;
transform: rotate(-15deg);
color:red;
}
</style>
[ma-gdpr-vimeo video="814361316" title-text="Planet Erde <span>mit Klasse</span>" title-class="my-video-title-class"]

play-button
MA GDPR Vimeo stellt verschiedene Play Button Typen zur Verfügung.
Standard ist der Button Type vimeo. Dieser braucht nicht explizit angegeben zu werden.
Über den Parameter play-button kann man den gewünschten Button auswählen:
Button Type
vimeo

[ma-gdpr-vimeo video="814361316" play-button="vimeo"]
Button Typ
circle

[ma-gdpr-vimeo video="814361316" play-button="circle"]
Button Typ
circle-o

[ma-gdpr-vimeo video="814361316" play-button="circle-o"]
Button Typ
play

[ma-gdpr-vimeo video="814361316" play-button="play"]
play-button-color
Die Farbe des Vimeo Play Buttons ist schwarz. Die anderen Button Typen haben weiß als Standardfarbe.
Mit dem Parameter play-button-color kann eine abweichende Farbe für den Button festgelegt werden.

[ma-gdpr-vimeo video="814361316" play-button-color="blue"]

[ma-gdpr-vimeo video="814361316" play-button="circle" play-button-color="green"]

[ma-gdpr-vimeo video="814361316" play-button="circle-o" play-button-color="black"]
play-button-class
Mit dem Parameter play-button-class kann eine eigene CSS Klasse für den Play Button verwendet werden.
Ein grüner Play Button auf der Seite zu „Grüner Energie“ (Post ID 3862)? Kein Problem!
Beispiel:
<style>
body.postid-3862 .my-play-button {
color:green;
}
</style>
[ma-gdpr-vimeo video="814361316" play-button-class="my-play-button"]

new-window
Der Parameter new-window öffnet das Video in einem neuen Browser-Tab direkt auf der Vimeo Seite.
Dies ist eventuell wünschenswert, wenn man in WordPress nur sehr kleine Vorschaubilder der Videos anzeigen will, die für eine direkte Einbindung des Players ungeeignet sind.
[ma-gdpr-vimeo video="814361316" new-window=1]

Globale Parameter
Alle Shortcode Parameter können global definiert werden.
Das erleichtert die einheitliche Gestaltung der Videos und erspart die Definition der Parameter für jedes einzelne Video.
Dazu wird eine globale Variable $GLOBALS['ma_gdpr_vimeo'] als Array angelegt und mit den gewünschten Einstellungen versorgt.
Das geht recht einfach mit einem Code Snippet mit z.B. folgendem Inhalt:
$GLOBALS['ma_gdpr_vimeo'] = [
'play-button' => 'play',
'play-button-class' => 'my-play-button',
];
Eine Sonderlösung gilt hierbei für den Parameter gdpr-text, der sprach-sensitiv ist.
Die Angabe eines globalen Parameters gdpr-text setzt den Hinweis global auf einen einheitlichen Wert.
Die Ergänzung um ein Sprachkennzeichen steuert die Text-Ausgabe je Sprache.
$GLOBALS['ma_gdpr_vimeo'] = [
'gdpr-text' => 'Read the {privacy policy}.',
'gdpr-text-de' => 'Info zum {Datenschutz}</a>',
];
Weitere Vimeo Parameter
Vimeo bietet selbst noch weitere Parameter für die Steuerung der Video-Wiedergabe und das Aussehen des Players an.
Eine Übersicht über die verfügbaren Parameter gibt es hier: https://developer.vimeo.com/api/oembed/videos
Aktuell werden diese Parameter nicht unterstützt, aber bei Nachfrage und Bedarf gegebenenfalls noch implementiert.
Vimeo Player
Bei Klick auf ein Video wird ein iFrame aktiviert, der das Video von den Vimeo Servern lädt.
Alle von Vimeo gewohnten Funktionen sind hier verfügbar.
In MA GDPR Vimeo ist der Vimeo Player so implementiert, dass bei Klick auf ein Video ein eventuell anderes, bereits laufendes Video pausiert wird. So laufen nicht mehrere Videos gleichzeitig.
Vimeo Metadaten
Vimeo stellt zu jedem Video ein paar Metadaten zur Verfügung.
Dazu gehören der Video-Titel, Autor und Beschreibung.
Diese Metadaten können per Platzhalter zur Attributierung des Videos verwendet werden.
Unterstützt werden derzeit die Platzhalter @title@, @author_name@, @description@ in den Parametern alt, title und title-text.
Beispiel:
[ma-gdpr-vimeo video="814361316" title="@title@" title-text="@title@ by @author_name@<br>@description@" alt="@title@"]

Created with Fusion, 2017
Hide from Vimeo
In den Privacy Einstellungen zu einem Vimeo Video gibt es die Option „Hide from Vimeo“, die ein Video aus Vimeo Listen entfernt, und den Zugriff nur per spezieller URL mit einem zusätzlichem Hash-Code erlaubt.
Der URL zu dem Video kann verschiedene Formate haben:
- https://vimeo.com/1234567/a123b456c7
- https://vimeo.com/1234567:a123b456c7
- https://vimeo.com/1234567?h=a123b456c7
In all diesen Fällen ist 1234567 die Video ID, und a123b456c7 stellt den Hash Code dar.
MA GDPR Vimeo unterstützt den Hash Code in verschiedenen Varianten
[ma-gdpr-vimeo video="1234567" h="a123b456c7"]
[ma-gdpr-vimeo video="https://vimeo.com/1234567/a123b456c7"]
[ma-gdpr-vimeo video="https://vimeo.com/1234567:a123b456c7"]
[ma-gdpr-vimeo video="https://vimeo.com/1234567?h=a123b456c7"]

Hinweise zu Page Buildern
Oxygen (Classic) Builder
Beim Schließen von Oxygen Modals wird das Attribut src von IFrames zurückgesetzt, um das Video zu stoppen.
Oxygen implementiert dies durch this.src = this.src.
Dadurch werden gleichzeitig sämtliche Event Handler von MA GDPR Vimeo entfernt.
Wenn ein Modal geschlossen wird, wird das Video gestoppt, aber MA GDPR Vimeo verliert jegliche Kontrolle über den Status des Videos.
Ab diesem Zeitpunkt kann MA GDPR Vimeo nicht mehr automatisch Videos stoppen, wenn ein neues Video gestartet wird.
Einstellungen
WordPress Admin-Menü > Einstellungen > MA GDPR Vimeo zeigt die Administrations-Seiten, wo der Cache verwaltet und die Voreinstellungen für die Shortcodes festgelegt werden können.
Cache
Diese Seite erlaubt die Verwaltung des Cache.
Es werden alle zwischengespeicherten Videos mit den wichtigsten Details angezeigt.
Einzelne oder alle Videos können aus dem Cache gelöscht, oder von Vimeo aktualisiert werden.

Hinweis:
Wird der Cache zu einem Video gelöscht, das noch auf einer Seite eingebunden ist, wird der Video-Cache automatisch neu erzeugt, sobald die Seite das nächste mal aufgerufen wird.
Shortcode Voreinstellungen
Auf dieser Seite können globale Voreinstellungen für die Shortcodes getroffen werden.
Wenn auf der gesamten Website beispielsweise ein bestimmtes Styling verwendet werden soll, kann dies hier zentral statt bei jedem einzelnen Shortcode als Parameter angegeben werden.
Diese zentralen Voreinstellungen können jedoch bei Bedarf bei einzelnen Shortcodes durch Parameter wieder überschrieben werden.

Tipp:
Der gdpr-text kann für bis zu 10 Sprachen vorgegeben werden.
Wird eine andere Sprache benötigt, kann eine bestehende Sprache einfach überschrieben werden.
FAQ – Häufig gestellte Fragen
Software Installation und Aktualisierung
Installation
Die Installation der Software kann mit unterschiedlichen Verfahren erfolgen:
Plugin:
Die Software steht als Plugin (ZIP Archiv) zur Verfügung und kann in WordPress als Plugin installiert werden.
Code Snippet:
Die Software ist als Code Snippet lauffähig.
Für die Plugins „Code Snippets“ und „Advanced Scripts“ wird eine JSON Datei zum Download angeboten, die dort direkt importiert werden kann.
PHP:
Die Software kann als PHP Datei herunter geladen werden.
Diese PHP Datei kann in anderen Code Snippet Plugins verwendet werden (den Code per Copy & Paste einfügen), oder in ein eigenes WordPress Child Theme eingebunden werden (require_once('path/to/the.php');).
Aktualisierung
Die Software prüft selbständig, ob Aktualisierungen verfügbar sind:
Plugin:
Die Aktualisierung folgt den bekannten WordPress Methoden: Alle 12 Stunden wird geprüft, ob eine neue Version verfügbar ist.
Das Update kann dann manuell, oder auch automatisch erfolgen.

Code Snippet & PHP:
Die Software implementiert eine spezielle Methode, die auch bei der Installation als Snippet oder PHP Include eine Prüfung auf Aktualisierungen durchführt. Das Prüfintervall ist, wie bei Plugins, auf 12 Stunden festgelegt.
Steht eine neuere Version zur Verfügung, wird dies im Admin Bereich als Hinweis eingeblendet:

Download
Spenden ❤️
Es macht mir viel Freude, Software zu entwickeln und damit typische Anforderungen zu lösen.
Die Software stelle ich kostenfrei zur Nutzung zur Verfügung.
Wenn Du möchtest, kannst Du meine vielen Stunden Arbeit mit einer kleinen Kaffee-Spende über PayPal honorieren.
Bei Klick auf den Button wird eine Verbindung zu PayPal aufgebaut.
Spenden werden selbstverständlich ordnungsgemäß durch mich versteuert.
Disclaimer
Diese Software habe ich nach bestem Wissen und Gewissen entwickelt und getestet.
Ich stelle die Software zur freien Verwendung zur Verfügung.
Eine Garantie für die Funktionalität in allen denkbaren WordPress Umgebungen kann ich nicht geben.
Download und Nutzung dieser Software erfolgen auf eigene Gefahr und Verantwortung.
Change Log
- Version 2.0.010. Mai 2026Erfordert mindestens WordPress: 5.8•Getestet bis WordPress: 6.9.4•Erfordert PHP: 7.4
New Features:
- Now available as Code Snippet, Include, and Plugin with automatic update check.
For snippet or include, checks for updates every 12 hrs (same frequency used by WP for plugin updates),
and shows update notice in admin area, dismissible for 12 hrs. Can also be checked manually on the Settings page.
For plugin, WordPress standard update mechanism is used. - Settings > MA GDPR Vimeo
- Manage the video cache (thumbnails and meta data retrieved from Vimeo): Cache can be deleted or refreshed from Vimeo.
- Configure presets values for shortcode parameters
Changes:
- Predefined GDPR texts for different languages
Now handle the privacy policy term in curly brackets instead of %s placeholder plus
separate term. This simplifies editing the texts on the settings page.
Caution! Old syntax (%s placeholder plus separate term) is not supported anymore.
If you used the $GLOBALS method to define GDPR texts, this must be adapted to the new format. - Vimeo requests
- Video details and thumbnails are now retrieved using cURL instead of file_get_contents to avoid the requirement for allow_url_fopen.
- Requests to Vimeo now send Client Hints (Sec-CH-UA...).
- Accept-Language now uses fallbacks.
- Error handling and logging:
- Added more specific error messages for different failure points (e.g. thumbnail retrieval, video info retrieval, parsing errors) to improve
- If basic video data (title, description, duration) is empty after retrieval from Vimeo, the video is considered as unavailable, and an error message is shown.
- Handling non-existing manual thumbnails: If a manual thumbnail is specified but not found, fall back to Vimeo thumbnail
- Added proper html and attribute escaping, and using kses for attributes that allow HTML (title, gdpr-text)
- Added shortcode parameter 'thumbnail-loading' to optimize thumbnail loading (lazy or eager with fetchfiority=high).
- Replaced error suppression (@ operator) with try-catch blocks
Fixes:
- Added width/height attributes to SVG symbol definition, to avoid a gap at the page end in Bricks Builder.
That gap was caused by a Bricks CSS rule to set a min-width/height for <svg> without width/height attributes.
(Thanks to Stephen Vaughan for reporting!)
- Now available as Code Snippet, Include, and Plugin with automatic update check.
- Version 1.4.310. Dezember 2025Erfordert mindestens WordPress: 5.3•Getestet bis WordPress: 6.9•Erfordert PHP: 7.4
Fixes:
- If video details don't contain thumbnail details, show error message, possibly with required hash parameter.
- Version 1.4.2Download nicht verfügbar.11. Juli 2025
Fixes:
- Fixed warning about undefined array key in parse_video_url()
- Version 1.4.1Download nicht verfügbar.11. Oktober 2024
Fixes:
- Fixed missing styling of video preview (play button, GDPR text) in Bricks builder.
- Version 1.4.0Download nicht verfügbar.4. Juli 2024
New Features:
- Support for unlisted Vimeo videos with hash parameter "h" in shortcode or URL
- Loading more thumbnail sizes from Vimeo
Changes:
- Replaced deprecated Vimeo SimpleAPI by oEmbed
- Cache JSON format has changed due to the change from SimpleAPI to oEmbed
- Version 1.3.1Download nicht verfügbar.--
Changes
- Added width and height attributes for thumbnail images
- Version 1.3.0Download nicht verfügbar.28. April 2024
Reorganization of code base.
New Features:
- For better accessibility, the Enter key can now be used to start and stop videos.
(Thanks to Stephan Koenigk for his feature request and pre-release tests)
Changes:
- For invalid IDs, don't create directory, store json, attempt to retrieve thumbnails
- In Builders Bricks and Oxygen, click handler is deactivated to allow selecting element
- Preparation for Bricks Element. Coming soon.
- For better accessibility, the Enter key can now be used to start and stop videos.
- Version 1.2.0Download nicht verfügbar.30. Dezember 2023
New Features:
- Complete rebuild of JS
- Now using Vimeo Player API to provide more control
- Video player management via players registry and observer
- Pause current video if another one is started
- Pause video if modal/popup closed (evaluated by visibility of parent DOM element)
- Support for dynamically embedded videos using AJAX calls
- Removed init prevention for AJAX calls
- Added PHP method MA_GDPR_Vimeo::enable_footercode() to trigger output of footer code (styles, scripts, svg) for video embeds dynamically loaded by AJAX calls
- Play click handler is now assigned as onclick event instead of collecting all videos after page load. This eliminates the need for an extra click handler initialization for players dynamically loaded after page load.
- Optimizations for accessibility
Fixes:
- Prefixed wrapper/player IDs with snippet slug to prevent IDs starting with number
- Fallback for aspect ratio via padding-top (CSS variable, @supports rule) for older browsers not supporting aspect-ratio like Safari < V15
- Version 1.1.1Download nicht verfügbar.9. November 2023
Fixes:
- Error "Attempt to assign property 'notes' on null" in get_video_details()
- Version 1.1.0Download nicht verfügbar.4. April 2023
New Features:
- Pause handler for closed Oxygen Modals
- Version 1.0.0Download nicht verfügbar.3. April 2023
Initial Release
