1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

Spams automatisch bzw. nach Alter löschen

Dieses Thema im Forum "Plugins und Widgets" wurde erstellt von m266, 21. April 2021.

Schlagworte:
  1. m266

    m266 Well-Known Member

    Registriert seit:
    21. April 2010
    Beiträge:
    476
    Zustimmungen:
    7
    Hallo,

    gibt es eine Möglichkeit, Spams automatisch oder nach Alter zu löschen? Ich benutze eine eigene Kommentar-Blacklist, welche mir vielen Müll abfängt und als Spam bei den Kommentaren kennzeichnet. Mein hartnäckiger Freund "Eric" ist auch fast jeden Tag dabei. Diese Spam-Kommentare werden dann gleich in Spam verschoben und nicht mehr per E-Mail angezeigt. AntiSpam Bee verwende ich nicht, sondern ein anderes Tool.
    Hat jemand eine Idee oder einen Ansatz, um diese blöden Spams regelmäßig zu löschen?
    Die SuFu im Forum und in Google brachte bisher keine brauchbaren Ergebnisse.
    Vielen Dank für eure Hilfe.
     
  2. Marcus[IS]

    Marcus[IS] Well-Known Member

    Registriert seit:
    23. August 2009
    Beiträge:
    5.801
    Zustimmungen:
    126
    Hi,

    Wäre natürlich jetzt hilfreich wenn du erwähnt hättest, was du als Alternative genommen hast.

    Hier wäre ein Ansatz wie das mit Akismet funktionieren würde.
    Eventuell kannst du es ja auf dein anderes Tool ummünzen.
    https://www.saotn.org/delete-spam-comments-after-three-3-days/
     
  3. m266

    m266 Well-Known Member

    Registriert seit:
    21. April 2010
    Beiträge:
    476
    Zustimmungen:
    7
    Ich benutze NinjaFirewall (WP Edition). Mit dem Comment Blacklist Manager werden die erkannten Spams ausgefiltert und als Spam deklariert. Dazu verwende ich eine eigene Blacklist, welche wie hier beschrieben auf GitHub gehostet wird. Sie fängt wie erwähnt viele Spams ab und wird regelmäßig ergänzt. Das Code-Beispiel für Akismet funktioniert erwartungsgemäß nicht bei mir. M. E. ist der Löschvorgang der Spams nicht von einem Plugin abhängig, da ich z. B. auch manuell Kommentare nach Spam verschieben kann. Es sollte also mit Bordmitteln funktionieren.
     
  4. mensmaximus

    mensmaximus Well-Known Member

    Registriert seit:
    24. Juli 2014
    Beiträge:
    8.769
    Zustimmungen:
    412
  5. maxe

    maxe Well-Known Member
    Ehrenmitglied

    Registriert seit:
    1. Mai 2008
    Beiträge:
    19.564
    Zustimmungen:
    269
    m266 gefällt das.
  6. m266

    m266 Well-Known Member

    Registriert seit:
    21. April 2010
    Beiträge:
    476
    Zustimmungen:
    7
    Das wäre ideal, wenn ich das Script mit einem Cronjob z. B. wöchentlich aufrufen könnte. Leider ist der Code veraltet und ich finde die Lösung nicht:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  7. m266

    m266 Well-Known Member

    Registriert seit:
    21. April 2010
    Beiträge:
    476
    Zustimmungen:
    7
    Im Zuge der Sparsamkeit von Plugins wäre mir ein kleines Script, welches ich anpassen kann (siehe Tipp von Maxe) lieber. Die vielen Funktionen des Plugins benötige ich eigentlich nicht, habe es aber zum Ausprobieren in meinen Testsystem installiert.
     
  8. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    8.721
    Zustimmungen:
    1.003
    Eine "saubere" WordPress Lösung wäre ein regelmässiger get_comments() Aufruf mit entspr. date_query und status Parametern mit anschliessenden passenden wp_delete_comment() Aufrufen. Mehr dazu findet sich in den Entwicklerdokumentation https://developer.wordpress.org/

    Dadurch werden alle sonstigen nötigen Dinge in WordPress erledigt wie z.B. der interne Kommentar Cache bereinigt und auch entspr. Actions für weitere WordPress API Aufrufe und andere Plugins getriggert.

    Direkte Eingriffe per SQL in Datenbanktabellen sind in WordPress selten eine gute Idee.
     
    m266 und mensmaximus gefällt das.
  9. m266

    m266 Well-Known Member

    Registriert seit:
    21. April 2010
    Beiträge:
    476
    Zustimmungen:
    7
    Danke für den Hinweis. Für die Umsetzung fehlen mir leider die Kenntnisse (nur Grundlagenwissen vorhanden, was bisher ausreicht).

    Ich habe mir nochmal den Tipp von Maxe vorgenommen und das kleine Script wie hier beschrieben abgeändert (prepare durch get_results ersetzt). Nun werden die Kommentare aus Spam wie gewünscht gelöscht und alle übrigen Kommentare bleiben erhalten.
    Hier das geänderte Script:
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Spricht etwas gegen diese Lösung?
     
  10. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    8.721
    Zustimmungen:
    1.003
    Ja, erstens das:
    Zweites wird der Code nur dann aufgerufen, wenn Du im Backend aktiv selbst das Menü Kommentare aufrufst.

    Drittens macht der Code nicht das, was Du beschreibst, also weder regelmäßig automatisch noch wird nach Alter unterschieden.
     
    m266 gefällt das.
  11. m266

    m266 Well-Known Member

    Registriert seit:
    21. April 2010
    Beiträge:
    476
    Zustimmungen:
    7
    Danke für die Erläuterungen. Dann bleibt nur der Einsatz eines entsprechenden Plugins wie "Advanced Database Cleaner", was ich im Grunde vermeiden wollte.
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden