Admineasy_svg_pro_url

easy_svg_pro_url

Ändere, wohin der Link Easy SVG Pro kaufen in der Zeile des Plugins auf der Plugin-Seite führt, etwa zu einer Partnerseite oder einem Empfehlungslink.

Filter · Easy SVG · Status: Stabil

Auf der Seite Plugins zeigt die Zeile von Easy SVG neben Deaktivieren einen roten Link "Easy SVG Pro kaufen", solange das kostenpflichtige Add-on nicht installiert ist. Dieser Filter ändert die Adresse, die der Link öffnet. Den Text ändert er nicht, und ausblenden kann er den Link auch nicht.

Verwendung

apply_filters( 'easy_svg_pro_url', string $url )

Wird in includes/panel.php innerhalb von easy_svg_plugin_action_links() angewendet. Seit 5.4.0.

Wann du es brauchst

  • Du bist Agentur oder Wiederverkäufer und willst, dass der Link auf deine eigene Seite zum Add-on führt oder auf einen Empfehlungslink.
  • Du hängst Tracking-Parameter an (zum Beispiel UTM-Werte), um zu sehen, woher Käufe kommen.

Lass es bleiben, wenn:

  • der Link verschwinden soll. Dieser Filter ändert nur das Ziel. Entferne stattdessen den Eintrag easy_svg_pro aus den Aktionslinks (siehe Beispiele).
  • du den Link "Icons" daneben ändern willst. Der zeigt immer auf den Icons-Bildschirm.

Parameter

body
$urlstring
Required

Das aktuelle Ziel. Standardmäßig der Wert der Konstante EASY_SVG_PRO_URL, also https://www.unleash-wp.com.

Rückgabewert

returnstring

Die Adresse, die der Link öffnen soll. Sie wird in einen String umgewandelt und vor der Ausgabe durch esc_url() geschickt. Adressen mit einem Protokoll, das WordPress nicht erlaubt (zum Beispiel javascript:), landen deshalb als leeres href. Gib eine vollständige https://-Adresse zurück.

Standardwert

https://www.unleash-wp.com (die Konstante EASY_SVG_PRO_URL).

Beispiele

function mysite_easy_svg_pro_url( $url ) {
	return 'https://example.com/easy-svg-pro/';
}
add_filter( 'easy_svg_pro_url', 'mysite_easy_svg_pro_url' );

Standardseite behalten, Tracking-Parameter anhängen

function mysite_easy_svg_pro_url_tracked( $url ) {
	return add_query_arg(
		array(
			'utm_source'   => 'client-site',
			'utm_medium'   => 'plugins-screen',
			'utm_campaign' => 'easy-svg',
		),
		$url
	);
}
add_filter( 'easy_svg_pro_url', 'mysite_easy_svg_pro_url_tracked' );

add_query_arg() behält die Adresse, die ein anderer Filter gesetzt hat, und hängt nur die Parameter an.

Der Filter kann den Link nicht ausblenden. Nimm den WordPress-eigenen Filter für die Aktionslinks dieser Plugin-Zeile und entferne den Schlüssel easy_svg_pro. Die Plugin-Datei heißt easy-svg/easy-svg.php, wenn der Ordner seinen üblichen Namen hat.

function mysite_remove_easy_svg_pro_link( $links ) {
	unset( $links['easy_svg_pro'] );

	return $links;
}
add_filter( 'plugin_action_links_easy-svg/easy-svg.php', 'mysite_remove_easy_svg_pro_link', 20 );

Mit Priorität 20 hat Easy SVG seine Links (mit der Standardpriorität 10) schon hinzugefügt, wenn deiner läuft.

So funktioniert es

  1. WordPress zeichnet auf der Seite Plugins die Zeile jedes Plugins und wendet plugin_action_links_easy-svg/easy-svg.php an.
  2. Der Callback easy_svg_plugin_action_links() von Easy SVG fügt immer einen Link "Icons" zum Icons-Bildschirm hinzu.
  3. Nur wenn Easy SVG Pro nicht installiert ist, kommt der Link "Easy SVG Pro kaufen" dazu (englisch "Buy Easy SVG Pro"). Diese Funktion bringt das Add-on mit, der Link verschwindet also, sobald das Add-on aktiv ist, egal ob mit oder ohne Lizenz.
  4. Die Adresse ist esc_url( (string) apply_filters( 'easy_svg_pro_url', EASY_SVG_PRO_URL ) ). Der Link öffnet sich in einem neuen Tab mit rel="noopener noreferrer".
  5. Beide Links stehen vor den WordPress-eigenen Links (Deaktivieren und Co.).

Der Filter läuft nur, während diese Zeile gezeichnet wird, auf anderen Seiten kostet er also nichts.

Stolperfallen

  • Nicht in der Netzwerkverwaltung. In einer Multisite nutzt die Plugin-Seite des Netzwerks einen anderen WordPress-Hook (network_admin_plugin_action_links_...), den Easy SVG nicht verwendet. Link und Filter gibt es nur auf der Plugin-Seite einer einzelnen Website.
  • Ein leerer String entfernt den Link nicht. Er gibt einen Link mit leerem Ziel aus. Nimm das Beispiel zum Entfernen oben.
  • Der Hook-Name folgt dem Ordnernamen. Liegt das Plugin nicht im Ordner easy-svg, heißt der Aktionslink-Hook im Entfernen-Beispiel anders. Der Name dieses Filters ändert sich nie.
  • Der Referrer wird nicht mitgeschickt. Der Link trägt rel="noreferrer", die Zielseite sieht also nicht, von welcher Website er kam. Was du brauchst, gehört in Query-Parameter.

Siehe auch