it-swarm.com.de

Wie können Kommentare eingereicht werden, wenn ich kein Kommentarfeld auf einer Seite habe?

Ich habe den Zugriff auf xmlrcp blockiert und fast alles entfernt, was in wp_head generiert wird. Ich erhalte jedoch weiterhin Benachrichtigungen im Administrator über Kommentare, die in Posts veröffentlicht werden, auch wenn auf dieser Seite kein Formular vorhanden ist. Wie ist das möglich?

Ich denke, dass dies unten funktionieren würde:

// Remove comment support
add_action( 'init', function() {
        remove_post_type_support( 'page', 'comments' );
        remove_post_type_support( 'post', 'comments' );

});
// Close open comments
add_filter( 'comments_open', function( $open, $post_id ) {
    $post = get_post( $post_id );
    if ( 'page' == $post->post_type || 'post' == $post->post_type  )
        $open = false;
    return $open;
}, 10, 2 );

Ob das funktioniert oder nicht, ich frage mich immer noch, wie jemand/oder ein Spam-Bot einen Kommentar posten kann, wenn auf der Seite kein Formular oder etwas vorhanden ist.

3
Bryan Willis

Die visuelle Darstellung eines Kommentarformulars (oder das Fehlen eines solchen Formulars) hat keinen Einfluss auf die Fähigkeit, Kommentare zu erhalten, und Spammer kümmern sich normalerweise überhaupt nicht darum, was sich in Ihrem Formular befindet. Wordpress hat einen gut publizierten Endpunkt, an den alle Kommentare gesendet werden (und obwohl ich mich noch nicht genau an die Details erinnere, die mir gerade in den Sinn gekommen sind), und Spammer können an diesen Endpunkt mit genügend Details posten, um einen richtigen Kommentar abzugeben, ohne sogar das Laden des Beitrags, zu dem sie einen Kommentar abgeben.

Einer der einfachen Schritte zur Spam-Abwehr gegen faule Spammer besteht darin, dem Kommentarformular ein verstecktes Feld hinzuzufügen und jeden Kommentar zu verwerfen, der ohne dieses Feld eingereicht wird.

2
Mark Kaplun

Ein kleiner Trick ist das Überprüfen Ihres aktuellen Themas und das Erstellen einer neuen Datei comments.php (falls Sie keine haben). In dieser Datei platzieren Sie einfach diesen Code:

<?php return false; ?>

Es verhindert, dass ein Bot Ihr Kommentarformular zum Posten verwendet.

0
Henry Ibinson