Zurück   WordPress Deutschland Forum > Support > Plugins und Widgets
Registrieren Hilfe Benutzerliste Suchen Heutige Beiträge Alle Foren als gelesen markieren Threads ohne Antworten


Antwort
 
Themen-Optionen Ansicht
Alt 17.05.2008, 17:17   #1 (permalink)
tokyopunk
PostRank: 4
 
Benutzerbild von tokyopunk
 
Registriert seit: 08.05.2006
Beiträge: 219
eMail-Benachrichtigung bei bestimmter IP-Adresse?

Hi ihr,

gibt es ein ein Plugin oder eine andere Möglichkeit sich per eMail automatisch benachrichtigen zu lassen, wenn bestimmte IP-Adressen den Blog besuchen? Habe übrigens semmelstatz aktiviert, falls das etwas bringt.

Grüße, Marcel
__________________
www.amypink.com
tokyopunk ist offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiWong this Post!
Mit Zitat antworten
Alt 17.05.2008, 21:08   #2 (permalink)
Alphawolf
WPD-Moderator
 
Registriert seit: 31.05.2005
Ort: Gera Ghetto
Beiträge: 1.908
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.
__________________
Erweiterungen

Geändert von Alphawolf (18.05.2008 um 13:12 Uhr).
Alphawolf ist offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiWong this Post!
Mit Zitat antworten
Alt 18.05.2008, 10:07   #3 (permalink)
tokyopunk
PostRank: 4
 
Benutzerbild von tokyopunk
 
Registriert seit: 08.05.2006
Beiträge: 219
Hi Alphawolf,

das ist ja mal echt toll, danke für die Antwort und dass du auch noch gleich ein Plugin erstellt hast, wow

Jetzt mal ne blöde Frage und zwar: Ist es auch technisch möglich, nicht die IP-Adresse als Auslöser zu nehmen, sondern einen bestimmten Kommentator, dessen semmelstatz-cookie ja gespeichert ist? Denn die letzten 5 Ziffern der IP-Adresse tauschen sich aus. Also dass wenn dieser bestimmte Kommentator die Seite besucht, dass dann eine eMail-Benachrichtigung erfolgt?

Grüße, Marcel
__________________
www.amypink.com
tokyopunk ist offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiWong this Post!
Mit Zitat antworten
Alt 18.05.2008, 13:14   #4 (permalink)
Alphawolf
WPD-Moderator
 
Registriert seit: 31.05.2005
Ort: Gera Ghetto
Beiträge: 1.908
Ja, ist sicherlich auch möglich, aber dazu müsste man wissen, wie die Cookies heißen, die semmelstatz da erstellt. Ich selbst nutze es leider nicht. Hast du da ein paar Infos?

Btw, bitte kopiere den Plugincode nochmal neu. Hab da gerade gesehen, dass ein Variablenname nicht stimmte, und einen falschen Cookie-Namen erzeugt, sodass der Cookie nie gefunden wird...
__________________
Erweiterungen
Alphawolf ist offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiWong this Post!
Mit Zitat antworten
Alt 18.05.2008, 13:50   #5 (permalink)
tokyopunk
PostRank: 4
 
Benutzerbild von tokyopunk
 
Registriert seit: 08.05.2006
Beiträge: 219
Ok, aber die Frage ist doch, ob wirklich Semmelstatz das Cookie erstellt oder kreiert eher WordPress dieses selbst?
__________________
www.amypink.com
tokyopunk ist offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiWong this Post!
Mit Zitat antworten
Alt 18.05.2008, 17:26   #6 (permalink)
Alphawolf
WPD-Moderator
 
Registriert seit: 31.05.2005
Ort: Gera Ghetto
Beiträge: 1.908
Okay, versuch es mal hiermit:
PHP-Code:
<?php
/*
Plugin Name: 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 Blog-Kommentator erneut den Blog aufruft.
Author: Oliver Schl&ouml;be
Author URI: http://www.schloebe.de/
*/

function os_cookie_check() {
    
$visitor_ip $_SERVER['REMOTE_ADDR'];
    
$zugriff_ort $_SERVER['REQUEST_URI'];
    
$email get_option('admin_email');
    
$betreff "Neuer Zugriff von IP " $visitor_ip " auf " wp_specialcharsget_option('blogname') );
    
$headers "From: " wp_specialcharsget_option('blogname') ) . " <$email>\n";
    
$headers .= "Content-Type: text/html\n";
    
$headers .= "Content-Transfer-Encoding: 8bit\n";
    
$mailtext "Neuer Zugriff auf " wp_specialcharsget_option('blogname') ) . " von Kommentator " $_COOKIE["comment_author_" COOKIEHASH] . " mit der IP " $visitor_ip " auf die Seite " $zugriff_ort;
    
$sanitized_blogtitle sanitize_titleget_option('blogname') );
    if( isset( 
$_COOKIE["comment_author_" COOKIEHASH] ) && $_COOKIE["comment_author_" COOKIEHASH] == 'Alphawolf' && !isset( $_COOKIE["wp_os_access_" COOKIEHASH] ) ) {
        
setcookie"wp_os_access_" COOKIEHASH$visitor_ip );
        
mail($email$betreff$mailtext$headers);
    }
}

add_action('init''os_cookie_check');
?>
Anpassen musst du in der Zeile
PHP-Code:
if( isset( $_COOKIE["comment_author_" COOKIEHASH] ) && $_COOKIE["comment_author_" COOKIEHASH] == 'Alphawolf' && !isset( $_COOKIE["wp_os_access_" COOKIEHASH] ) ) { 
nur die Abfrage
PHP-Code:
$_COOKIE["comment_author_" COOKIEHASH] == 'Alphawolf' 
Du kannst den Namen (wie bereits eingebaut) abfragen, die E-Mail und die URL (falls angegeben) des Kommentators.
Also z.B.
PHP-Code:
$_COOKIE["comment_author_url_" COOKIEHASH] == 'http://www.domain.de'
$_COOKIE["comment_author_email_" COOKIEHASH] == 'info@domain.de'
$_COOKIE["comment_author_" COOKIEHASH] == 'Alphawolf' 
Einfach mal probieren.
__________________
Erweiterungen
Alphawolf ist offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiWong this Post!
Mit Zitat antworten
Alt 18.05.2008, 18:17   #7 (permalink)
tokyopunk
PostRank: 4
 
Benutzerbild von tokyopunk
 
Registriert seit: 08.05.2006
Beiträge: 219
Also wirklich vielen Dank, dass du dir persönlich so viel Mühe gibst. Leider passiert gar nichts, also es wird leider keine Mail verschickt, obwohl ich alle möglichen Einstellungen versucht habe und sie mit meinem Testaccount auf einem anderen Browser getestet habe. Meinst man kann da noch was machen?
__________________
www.amypink.com
tokyopunk ist offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiWong this Post!
Mit Zitat antworten
Alt 18.05.2008, 18:40   #8 (permalink)
Alphawolf
WPD-Moderator
 
Registriert seit: 31.05.2005
Ort: Gera Ghetto
Beiträge: 1.908
1.) Du hast den Kommentar als nicht-registrierter User geschrieben, und nicht als eingeloggter Admin?
2.) Welche WP-Version nutzt du?
3.) Wie sieht bei dir jetzt die Abfrage aus?
4.) Enthält der Benutzername, den du (ggf) abfragst, Leerzeichen oder Sonderzeichen? Ggf. werden die Werte url-encodet im Cookie gespeichert.
__________________
Erweiterungen
Alphawolf ist offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiWong this Post!
Mit Zitat antworten
Alt 19.05.2008, 10:04   #9 (permalink)
tokyopunk
PostRank: 4
 
Benutzerbild von tokyopunk
 
Registriert seit: 08.05.2006
Beiträge: 219
Hehe ich glaube genau der erste Punkt war auch gleich das Problem

Hab die Probe aufs Exempel gemacht und es live ausprobiert. Anscheinend hat es auch funktioniert, eine eMail wurde versendet. Der Kommentator hat die Seite gestern dreimal besucht (laut Semmelstatz), aber es kam leider nur eine Mail.

Liegt es vielleicht daran, weil das Cookie nach der Sitzung nicht wieder gelöscht wird?
__________________
www.amypink.com
tokyopunk ist offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiWong this Post!
Mit Zitat antworten
Alt 19.05.2008, 12:26   #10 (permalink)
Alphawolf
WPD-Moderator
 
Registriert seit: 31.05.2005
Ort: Gera Ghetto
Beiträge: 1.908
Zitat:
Zitat von tokyopunk Beitrag anzeigen
Liegt es vielleicht daran, weil das Cookie nach der Sitzung nicht wieder gelöscht wird?
Beim Schließen des Browsers wird das Cookie gelöscht. Das macht jeder Browser mit Cookies, die kein Ablaufdatum haben. Offenbar hat dieser jemand seinen Browser zwischen den Besuchen nicht geschlossen.

Man könnte das Script so anpassen, dass der Cookie nach 30 oder 60 Minuten abläuft und gelöscht wird. Dann würdest du die Mail erneut bekommen, wenn er die Seite nach 30 oder 60 Minuten wieder betritt.
__________________
Erweiterungen
Alphawolf ist offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiWong this Post!
Mit Zitat antworten
Antwort


Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge anzufügen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist Aus.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are Aus
Refbacks are Aus


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:31 Uhr.


Sponsoren:

Powered by vBulletin® Version 3.6.8 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.0.0  — ImpressumEin Inpsyde.com Projekt