5 Stimmen

Erkennung doppelter Kommentare in Wordpress

Weiß jemand, wie man die Erkennung doppelter Kommentare in Wordpress (2.9.2) deaktivieren kann? Ich suche nach einer Möglichkeit, dies programmatisch zu tun, ohne Kerndateien zu bearbeiten. Wir fügen Kommentare über XMLRPC hinzu und die Erkennung von doppelten Kommentaren in wp-includes/comment.php (Zeile 494) verursacht beim Testen Probleme.

Merci !

12voto

hardy101 Punkte 1311

Eigentlich brauchen Sie dazu KEINE Kerndateien zu bearbeiten. Fügen Sie einfach diesen einen Filter und zwei winzige Funktionen in Ihr Theme ein functions.php Datei und doppelte Kommentare werden nicht mehr abgelehnt.

add_filter( 'wp_die_handler', 'my_wp_die_handler_function', 9 ); //9 means you can unhook the default before it fires

function my_wp_die_handler_function($function) {
    return 'my_skip_dupes_function'; //use our "die" handler instead (where we won't die)
}

//check to make sure we're only filtering out die requests for the "Duplicate" error we care about
function my_skip_dupes_function( $message, $title, $args ) {
    if (strpos( $message, 'Duplicate comment detected' ) === 0 ) { //make sure we only prevent death on the $dupe check
        remove_filter( 'wp_die_handler', '_default_wp_die_handler' ); //don't die
    }
    return; //nothing will happen
}

3voto

Dogbert Punkte 200597

Derzeit gibt es keine Haken, um dies zu tun, ohne die Kerndateien zu bearbeiten.

Der beste Weg wäre, die doppelte Prüfung aus der wp-includes/comment.php

0voto

codecowboy Punkte 9353
    $dupe = "SELECT comment_ID FROM $wpdb->comments WHERE comment_post_ID = '$comment_post_ID' AND comment_approved != 'trash' AND ( comment_author = '$comment_author' ";
if ( $comment_author_email )
    $dupe .= "OR comment_author_email = '$comment_author_email' ";
$dupe .= ") AND comment_content = '$comment_content' LIMIT 1";

0voto

Tim Punkte 1

Ich hatte das gleiche Problem, als ich im Backend auf Kommentare antwortete.

Aber einfach nur mit demselben Kommentar auf dem Frontend zu antworten, funktionierte, ohne etwas zu ändern.

Ich hoffe, dass dies jemandem helfen kann.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X