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_proaus den Aktionslinks (siehe Beispiele). - du den Link "Icons" daneben ändern willst. Der zeigt immer auf den Icons-Bildschirm.
Parameter
Das aktuelle Ziel. Standardmäßig der Wert der Konstante EASY_SVG_PRO_URL, also https://www.unleash-wp.com.
Rückgabewert
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
Den Link auf deine eigene Seite lenken
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.
Den Link stattdessen entfernen
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
- WordPress zeichnet auf der Seite Plugins die Zeile jedes Plugins und wendet
plugin_action_links_easy-svg/easy-svg.phpan. - Der Callback
easy_svg_plugin_action_links()von Easy SVG fügt immer einen Link "Icons" zum Icons-Bildschirm hinzu. - 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.
- Die Adresse ist
esc_url( (string) apply_filters( 'easy_svg_pro_url', EASY_SVG_PRO_URL ) ). Der Link öffnet sich in einem neuen Tab mitrel="noopener noreferrer". - 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.