Einzelnen Beitrag anzeigen
Alt 17.05.2008, 21:08   #2 (permalink)
Alphawolf
WPD-Moderator
 
Benutzerbild von Alphawolf
 
Registriert seit: 31.05.2005
Ort: Gera Ghetto
Beiträge: 2.258
Auf die Schnelle. Die Email wird nur einmal pro Besuch verschickt (es sei denn, du stehst auf Email-Spam ), also nicht bei jedem Zugriff auf jede Seite pro Session. Sobald derjenige den Browser schließt, wird das Cookie gelöscht, und beim nächsten Aufruf deiner Seite wird erneut nur einmal eine E-Mail verschickt.

Anpassen musst du nur diese Zeile:
PHP-Code:
$notify_ips = array("xxx.xxx.xxx.xxx"); 
Wenn du mehrere IPs checken willst, einfach die Liste erweitern, z.B.:
PHP-Code:
$notify_ips = array("xxx.xxx.xxx.xxx""xxx.xxx.xxx.xxx""xxx.xxx.xxx.xxx"); 
Das Plugin:
PHP-Code:
<?php
/*
Plugin Name: IP Access Notification
Version: 0.7
Plugin URI: http://forum.wordpress-deutschland.org/plugins-und-widgets/34672-email-benachrichtigung-bei-bestimmter-ip-adresse.html
Description: Verschickt eine Email an den Blog-Admin, wenn ein Besucher mit der angebenen IP den Blog aufruft.
Author: Oliver Schl&ouml;be
Author URI: http://www.schloebe.de/
*/

function os_ip_check() {
    
$visitor_ip $_SERVER['REMOTE_ADDR'];
    
$zugriff_ort $_SERVER['REQUEST_URI'];
    
$notify_ips = array("xxx.xxx.xxx.xxx"); // Welche IPs sollen gecheckt werden
    
if ( in_array$visitor_ip$notify_ips ) ) {
        
$absender get_option('admin_email');
        
$empfaenger get_option('admin_email');
        
$betreff "Neuer Zugriff von IP " $visitor_ip " auf " wp_specialcharsget_option('blogname') );
        
$headers "From: " wp_specialcharsget_option('blogname') ) . " <$absender>\n";
        
$headers .= "Content-Type: text/html\n";
        
$headers .= "Content-Transfer-Encoding: 8bit\n";
        
$mailtext "Neuer Zugriff auf " wp_specialcharsget_option('blogname') ) . " mit der IP " $visitor_ip " auf die Seite " $zugriff_ort;
        
$sanitized_blogtitle sanitize_titleget_option('blogname') );
        if( !isset( 
$_COOKIE["wp_" $sanitized_blogtitle "_ip_access"] ) ) {
            
setcookie"wp_" $sanitized_blogtitle "_ip_access"$visitor_ip );
            
mail($empfaenger$betreff$mailtext$headers);
        }
    }
}

add_action('init''os_ip_check');
?>
Im wp-content/plugins - Verzeichnis ein Verzeichnis ip-access-notification anlegen, darin eine Datei ip-access-notification.php erstellen und den obigen Code einfügen. Plugin aktivieren, fertig.
__________________
FAQ // Doku // Erbreiterungen

Geändert von Alphawolf (18.05.2008 um 13:12 Uhr).
Alphawolf ist offline   Mit Zitat antworten