2016-05-26 7 views
1

Ich muss WordPress registrierten Benutzer (nicht Gäste) zu beschränken nur einen Kommentar pro Beitrag. Zum Beispiel kann jeder registrierte Benutzer 20 Kommentare, aber 20 verschiedene Beiträge posten.Begrenzen WordPress-Benutzer, um einen Kommentar per Post

Dann wird das Formular für diesen bestimmten Benutzer ausgeblendet/entfernt.

Wie bearbeite ich den folgenden Code?

comment_form(); 
+0

Vielleicht wird es hilfreich sein, das gleiche Problem. http://wordpress.stackexchange.com/questions/137799/how-to-limit-users-to-one-comment-per-post – Destrif

Antwort

1
$is_commented = get_comments(array('user_id' => $current_user->ID, 'post_id'=>$post->ID)); 
if($is_commented) { 
    // give the user a message saying he already have commented 
} else { 
    comment_form(); 
} 
+0

Kann ich $ is_commented = true oder etwas Ähnliches verwenden? – baluba89

+0

um ... es gibt ein Array von Kommentaren zurück, wenn der Benutzer einen oder mehrere Kommentare für diesen Beitrag oder ein leeres Array hat, wenn keine Kommentare vorhanden sind. t für boolesche Operationen verwenden. – Ajith

0

Der einfache Ansatz besteht darin, zu überprüfen, ob ein Benutzer den Beitrag kommentiert hat oder nicht. Wenn sie den Beitrag kommentiert haben, deaktivieren Sie das Kommentarformular.

global $current_user; 
$args = array('user_id' => $current_user->ID); 
$usercomment = get_comments($args); 
if(count($usercomment) >= 1){ 
    echo 'disabled'; 
} else { 
    comment_form(); 
} 

Ich testete meine Website und beantwortete sie. Diese Methode war sehr sicher, Seite https://digiwp.com

Verwandte Themen