Diese Dokumentation ist, mit ein paar Ausnahmen, hauptsächlich auf entwicklungstechnischen Inhalt bezüglich Embed Privacy beschränkt. Bitte verwende das Supportforum für allgemeine Fragen.

Regex-Muster

Das Regex-Muster, das für jeden Embed-Anbieter definiert werden kann, gibt einen regulären Ausdruck an, um Übereinstimmungen mit einem Overlay von Embed Privacy zu ersetzen. Für die vorausgelieferten Embed-Anbieter reicht es aus, nur einen Teil der URL übereinstimmen zu lassen.

Wenn du eigene Embed-Anbieter hinzufügen willst, ist der beste Weg, das gesamte HTML-Element übereinstimmen zu lassen:

Schlechter regulärer Ausdruck

/sub\.example\.com/Code-Sprache: Klartext (plaintext)

Guter regulärer Ausdruck

/<iframe src="(.*)sub\.example\.com([^"]*)"><\/iframe>/Code-Sprache: Klartext (plaintext)

Seit Version 1.6.0 wird automatisch jeder reguläre Ausdruck, der kein < und > enthält, automatisch mit einer gewissen Anzahl an HTML-Tags zur Prüfung erweitert. Der reguläre Ausdruck von /sub\.example\.com/ wird damit:

/<(blockquote|div|embed|iframe|object)([^"]*)"([^<]*)sub\.example\.com([^"]*)"([^>]*)(>(.*)<\/(blockquote|div|embed|iframe|object))?>/Code-Sprache: Klartext (plaintext)

Du kannst die Tags, die über diesen regulären Audruck hinzugefügt werden, mit dem Filter embed_privacy_matcher_elements filtern.

Das beginnende und endende / im Regex-Muster ist optional und wird automatisch im Code hinzugefügt, wenn nicht vorhanden.

Embed Privacy in einem Plugin verwenden

Wenn du Embed Privacy für deinen individuellen Code in einem Plugin verwenden möchtest, ist der beste weg, direkt die Methode Embed_Privacy::get_single_overlay() zu verwenden.

Du kannst den Inhalt, der nach Ersetzungen durchsucht werden soll, als auch den Embed-Anbieter und zusätzliche Argumente übergeben, um den vollständigen Inhalt oder einen Teil damit mit einem Embed-Overlay zu ersetzen.

Beispiel

if ( class_exists( 'epiphyt\Embed_Privacy\Embed_Privacy' ) ) {
	$args = [
		'regex' => '/\custom\.example\.com/',
	];
	$content = '<p>Example Text</p><iframe src="https://custom.example.com"></iframe>';
	$content = epiphyt\Embed_Privacy\Embed_Privacy::get_instance()->get_single_overlay( $content, 'My Example', 'my-example', $args );
}
Code-Sprache: PHP (php)

Siehe die Methode Embed_Privacy::get_single_overlay() für eine vollständige Liste an möglichen Argumenten.

Individueller Vorschaubild-Anbieter

Embed Privacy hat seit Version 1.9.0 eine einfach verwendbare Methode implementiert, um individuelle Vorschaubild-Anbieter hinzuzufügen. Um einen individuellen Vorschaubild-Anbieter hinzuzufügen, erweitere die abstrakte Klasse epiphyt\Embed_Privacy\thumbnail\provider\Thumbnail_Provider und implementiere das Interface epiphyt\Embed_Privacy\thumbnail\provider\Thumbnail_Provider_Interface. (Siehe auch diesen Blogbeitrag für weitere Informationen bezüglich der abstrakten Klasse und des Interfaces.)

Darin musst du nur definieren, wie das Vorschaubild heruntergeladen werden kann und wie man die Embed-ID erhält. Du findest eine Basis-Implementierung für Vimeo auf GitHub.

Verwende dann den Filter embed_privacy_thumbnail_providers, um deinen individuellen Vorschaubild-Anbieter zu registrieren.

Filter

embed_privacy_content

Durch den Filter embed_privacy_content kann der Inhalt des Embed-Overlays geändert werden.

Parameter:
string $content Der Inhalt
string $embed_provider Der Embed-Anbieter dieses Embeds

Erwartet eine Zeichenfolge.

Durch den Filter embed_privacy_overlay_footer kann der Footer des Embed-Overlay-Containers geändert werden.

Parameter:
string $footer_content Der Footer-Inhalt

Erwartet eine Zeichenfolge.

embed_privacy_markup

Durch den Filter embed_privacy_markup kann der gesamte Embed-Overlay-Container geändert werden.

Parameter:
string $markup Das Markup
string $embed_provider Der Embed-Anbieter dieses Embeds

Erwartet eine Zeichenfolge.

embed_privacy_has_embed seit 1.3.0

Durch den Filter embed_privacy_has_embed kann der Rückgabewert von Embed_Privacy::has_embed() überschrieben werden.

Parameter:
null $has_embed Der Standardwert

Erwartet etwas anderes als null.

embed_privacy_assets_$embed_provider_lowercase seit 1.4.5

Durch den Filter embed_privacy_assets_$embed_provider_lowercase können zusätzliche Assets ausgegeben werden, die benötigt werden, damit das Embed funktioniert.

Jedes Asset muss aus einem Array bestehen, das mindestens den type-Parameter enthält, der entweder auf script für ein Script-Element oder inline für ein Inline-Skript gesetzt wird.

Wenn der type auf script gesetzt ist, die Parameter handle und src sind erforderlich, welche identisch aufgebaut sind wie dieselben Parameter in wp_enqueue_script. Zusätzlich kann ein Parameter version hinzugefügt werden.

Wenn der type auf inline gesetzt ist, die Parameter data und object_name sind erforderlich, welche identisch aufgebaut sind wie dieselben Parameter in wp_add_inline_script.

Parameter:
array $assets Liste der Embed-Assets
string $embed_provider_lowercase Der aktuelle Embed-Anbieter in Kleinbuchstaben

Erwartet ein Array mit Arrays.

embed_privacy_overlay_args seit 1.9.0

Durch den Filter embed_privacy_overlay_args können die Argumente vor dem Erstellen eines Overlays geändert werden.

Parameter:
array $args Template-Argumente
string $embed_provider Der Embed-Anbieter
string $embed_provider_lowercase Der Embed-Anbieter ohne Leerzeichen und in Kleinbuchstaben
string $output Die Ausgabe vor der Ersetzung

Erwartet ein Array.

embed_privacy_background_path_$embed_provider_lowercase seit 1.1.0

Durch den Filter embed_privacy_background_path_$embed_provider_lowercase kann der Pfad des Hintergrundbilds des Overlays geändert werden.

Parameter:
string $background_path Der Standard-Pfad des Hintergrundbilds
string $embed_provider_lowercase Der aktuelle Embed-Anbieter in Kleinbuchstaben

Erwartet eine Zeichenfolge zu einem gültigen Pfad eines Hintergrundbilds.

embed_privacy_background_url_$embed_provider_lowercase seit 1.1.0

Durch den Filter embed_privacy_background_url_$embed_provider_lowercase kann die URL des Hintergrundbilds des Overlays geändert werden.

Parameter:
string $background_url Die Standard-URL des Hintergrundbilds
string $embed_provider_lowercase Der aktuelle Embed-Anbieter in Kleinbuchstaben

Erwartet eine Zeichenfolge zu einer gültigen URL eines Hintergrundbilds.

embed_privacy_logo_path_$embed_provider_lowercase

Durch den Filter embed_privacy_logo_path_$embed_provider_lowercase kann der Pfad des Logos des Overlays geändert werden.

Parameter:
string $logo_path Der Standard-Pfad des Logos
string $embed_provider_lowercase Der aktuelle Embed-Anbieter in Kleinbuchstaben

Erwartet eine Zeichenfolge zu einem gültigen Pfad eines Logos.

embed_privacy_logo_url_$embed_provider_lowercase

Durch den Filter embed_privacy_logo_url_$embed_provider_lowercase kann die URL des Logos des Overlays geändert werden.

Parameter:
string $logo_url Die Standard-URL des Logos
string $embed_provider_lowercase Der aktuelle Embed-Anbieter in Kleinbuchstaben

Erwartet eine Zeichenfolge zu einer gültigen URL eines Logos.

embed_privacy_thumbnail_checked_orphaned seit 1.7.0

Die Action embed_privacy_thumbnail_checked_orphaned feuert, nachdem verweiste Daten für einen Anbieter überprüft und gegebenenfalls gelöscht wurden.

Parameter:
string $provider Anbietername
string $id Die ID des eingebetteten Inhalts
string $url Die Embed-URL
bool $missin_id Ob die ID fehlt
bool $missing_url Ob die URL fehlt
string $meta_value Der Vorschaubild-Dateiname
string $meta_key Der Vorschaubild-Metadatenschlüssel
WP_Post $post Das Beitragsobjekt
int $post_id Die Beitrags-ID

embed_privacy_thumbnail_data_filename seit 1.7.0

Durch den Filter embed_privacy_thumbnail_data_filename kann der Vorschaubild-Dateiname geändert werden.

Parameter:
string $thumbnail Der Vorschaubild-Dateiname
WP_Post $post Das Beitragsobjekt
string $url Die Embed-URL

Erwartet eine Zeichenfolge mit einem Vorschaubild-Dateinamen.

embed_privacy_thumbnail_data_id seit 1.7.0

Durch den Filter embed_privacy_thumbnail_data_id kann die Vorschaubild-ID geändert werden.

Parameter:
string $id Die Vorschaubild-ID
WP_Post $post Das Beitragsobjekt
string $url Die Embed-URL

Erwartet eine Zeichenfolge mit einer Vorschaubild-ID.

embed_privacy_thumbnail_data_path seit 1.7.0

Durch den Filter embed_privacy_thumbnail_data_path kann der Vorschaubild-Pfad geändert werden.

Parameter:
string $thumbnail Der Vorschaubild-Pfad
WP_Post $post Das Beitragsobjekt
string $url Die Embed-URL

Erwartet eine Zeichenfolge mit einem Vorschaubild-Pfad.

embed_privacy_thumbnail_data_url seit 1.7.0

Durch den Filter embed_privacy_thumbnail_data_url kann die Vorschaubild-URL geändert werden.

Parameter:
string $url Die Vorschaubild-URL
WP_Post $post Das Beitragsobjekt
string $url Die Embed-URL

Erwartet eine Zeichenfolge mit einer Vorschaubild-URL.

embed_privacy_thumbnail_get_from_provider seit 1.7.0

Die Action embed_privacy_thumbnail_get_from_provider feuert, nachdem Vorschaubild-Daten verarbeitet wurden.

Parameter:
string $return Das zurückgegebene oEmbed-HTML
object $data Ein Datenobjektergebnis von einem oEmbed-Anbieter
string $url Die URL des eingebetteten Inhalts

embed_privacy_thumbnail_path_$embed_provider_lowercase seit 1.1.0

Durch den Filter embed_privacy_thumbnail_path_$embed_provider_lowercase kann der Pfad des Vorschaubilds des Overlays geändert werden.

Parameter:
string $thumbnail_path Der Standard-Pfad des Vorschaubilds
string $embed_provider_lowercase Der aktuelle Embed-Anbieter in Kleinbuchstaben

Erwartet eine Zeichenfolge zu einem gültigen Pfad eines Vorschaubild.

embed_privacy_thumbnail_supported_provider_names seit 1.7.0

Durch den Filter embed_privacy_thumbnail_supported_provider_names kann der interne Name unterstützter Vorschaubild-Embed-Anbieter geändert werden.

Parameter:
array $supported_providers Aktuell unterstützte Anbieternamen

Erwartet ein Array mit Vorschaubild-Anbieternamen.

embed_privacy_thumbnail_providers since 1.9.0

Durch den Filter embed_privacy_thumbnail_providers können die registrierten Vorschaubild-Anbieter geändert werden.

Parameter:
Thumbnail_Provider[] $supported_providers Aktuell unterstützte Anbieter

Erwartet ein Array mit Vorschaubild-Anbieterklassen.

embed_privacy_pre_thumbnail_delete_orphaned_delete seit 1.8.0

Durch die Action embed_privacy_pre_thumbnail_check_orphaned_delete kann die Entfernung verwaister Vorschaubilder deaktiviert werden.

Parameter:
string $id Die Vorschaubild-ID
string $url Die Vorschaubild-URL
int $post_id Die Beitrags-ID
string $provider Der Embed-Anbieter-Name

embed_privacy_thumbnail_url_$embed_provider_lowercase seit 1.1.0

Durch den Filter embed_privacy_thumbnail_url_$embed_provider_lowercase kann die URL des Vorschaubilds des Overlays geändert werden.

Parameter:
string $thumbnail_url Die Standard-URL des Vorschaubilds
string $embed_provider_lowercase Der aktuelle Embed-Anbieter in Kleinbuchstaben

Erwartet eine Zeichenfolge zu einer gültigen URL eines Thumbnails.

embed_privacy_ignore_embed seit 1.9.0

Durch den Filter embed_privacy_ignore_embed kann die Verarbeitung einzelner Embeds deaktiviert werden.

Parameter:
bool $ignore_embed Ob dieser Embed ignoriert werden soll
string $content Der originale Inhalt
string $embed_provider Der Embed-Anbieter
string $embed_provider_lowercase Der Embed-Anbieter ohne Leerzeichen und in Kleinbuchstaben
array $args Zusätzliche Argumente

Erwartet einen booleschen Wert.

embed_privacy_ignore_unknown_providers seit 1.5.0

Durch den Filter embed_privacy_ignore_unknown_providers kann die Verarbeitung von Embeds unbekannter Anbieter deaktiviert werden.

Parameter:
bool $ignore_unknown Ob unbekannte Anbieter ignoriert werden sollen
string $content Der Original-Inhalt

Erwartet einen booleschen Wert.

embed_privacy_ignored_shortcodes seit 1.6.0

Durch den Filter embed_privacy_ignored_shortcodes können Shortcodes von der Ersetzung ausgenommen werden.

Parameter:
string[] $ignored_shortcodes Aktuelle Liste ignorierter Shortcodes

Erwartet ein Array.

embed_privacy_dynamic_style_properties since 1.9.0

Durch den Filter embed_privacy_dynamic_style_properties können die Eigenschaften des dynamischen Embed-Stils einer Seite geändert werden.

Parameters:
array $style_properties Stileigenschaften-Array

Erwartet ein Array.

embed_privacy_dynamic_style since 1.9.0

Durch den Filter embed_privacy_dynamic_style kann der dynamische Embed-Stil einer Seite geändert werden.

Parameter:
string $style Generierter Stil
array $style_properties Stil-Eigenschaften-Array

Erwartet eine Zeichenfolge.

embed_privacy_matcher_elements seit 1.6.0

Durch den Filter embed_privacy_matcher_elements können die HTML-Elemente, die den regulären Ausdruck für individuelle Embed-Anbieter erweitern, geändert werden.

Parameter:
array $allowed_tags Die erlaubten Tags
string $embed_provider_lowercase Der aktuelle Embed-Anbieter in Kleinbuchstaben

Erwartet ein Array.

embed_privacy_widget_output seit 1.1.0

Durch den Filter embed_privacy_widget_output kann die Ausgabe eines Widgets geändert werden.

Parameter:
string $widget_output Die Ausgabe des Widgets
string $widget_id Die ID des Widgets
string $sidebar_id Die aktuelle Seitenleisten-ID

Erwartet eine Zeichenfolge.

embed_privacy_opt_out_headline seit 1.2.0

Durch den Filter embed_privacy_opt_out_headline kann die Überschrift des Opt-out-Shortcodes geändert werden.

Parameter:
string $headline Aktuelles Überschriften-HTML
array $attributes Shortcode-Attribute

Erwartet eine Zeichenfolge.

embed_privacy_opt_out_subline seit 1.2.0

Durch den Filter embed_privacy_opt_out_subline kann die Unterüberschrift des Opt-out-Shortcodes geändert werden.

Parameter:
string $headline Aktuelles Unterüberschriften-HTML
array $attributes Shortcode-Attribute

Erwartet eine Zeichenfolge.

embed_privacy_editor_fields

Durch den Filter embed_privacy_editor_fields können zusätzliche Felder beim Bearbeiten eines Embed-Anbieters gerendert werden.

Parameter:
int $post_id Die aktuelle Beitrags-ID

Erwartet eine Zeichenfolge.

embed_privacy_register_fields seit 1.2.0

Durch den Filter embed_privacy_register_fields können zusätzliche Felder registriert werden.

Parameter:
int $post_id Die aktuelle Beitrags-ID

Erwartet ein Array.

embed_privacy_fields

Durch den Filter embed_privacy_fields können alle registrierten Felder geändert werden.

Parameter:
array $fields Die registrierten Felder

Erwartet ein Array.

embed_privacy_valid_files

Durch den Filter embed_privacy_valid_files können die Namen gültiger Dateien in POST-Anfragen beim Editor geändert werden.

Parameter:
array Die Standard-Namenliste

Erwartet ein Array.

jetpack_sharing_facebook_app_id seit 1.4.5

Durch den Filter jetpack_sharing_facebook_app_id kann die Facebook-App-ID des Jetpack-Teilens geändert werden.

Parameter:
string $app_id Die aktuelle App-ID

Erwartet eine Zeichenfolge.