toscho.design

WordPress: URL für IP-Adressen-Kontrolle ändern

WordPress verschickt E-Mails für einen Kommentar an den Autor des Beitrages, der kommentiert wurde, und an den Administrator, wenn ein Kommentar in die Moderation gelegt wurde.
In beiden Fällen bekommt man einen Link, um die IP-Adresse nachzuschlagen. Der sieht so aus:

Whois  : http://whois.arin.net/rest/ip/84.183.46.58

Leider steht auf der verlinkten Seite nicht besonders viel. Ich habe mir vor einiger Zeit ein eigenes Lookup-Tool gebaut, bei dem die Daten wichtiger sind als die Präsentation. Und das möchte ich auch in WordPress benutzen. Um also diese Ausgabe zu erreichen …

Whois  : http://ip.toscho.de/?ip=84.183.46.58

… filtere ich den Text beider E-Mails:

add_filter( 'comment_notification_text', 't5_comment_notification_ip_url' );
add_filter( 'comment_moderation_text', 't5_comment_notification_ip_url' );

/**
 * Replace URL to IP address lookup.
 *
 * @param  string $text
 * @return string
 */
function t5_comment_notification_ip_url( $text )
{
    return str_replace(
        'http://whois.arin.net/rest/ip/',
        'http://ip.toscho.de/?ip=',
        $text
    );
}

Als Plugin auf GitHub: https://gist.github.com/3523355

Momentan kann mein Tool noch nicht mit IPv6-Adressen umgehen – *schäm* – und vermutlich verkraftet es keine 300.000 Anfragen pro Tag. Auf Piwik habe ich bewußt verzichtet.

Das Plugin ist logischerweise nutzlos, wenn man Kommentare ohne IP-Adresse speichert.

Verwandte Artikel