5 Jahre später ... Wenn Sie keinen benutzerdefinierten Code schreiben oder das Comment Limit- Modul (das nur eine Dev-Version für D7 enthält) verwenden möchten, können Sie hierfür das Rules and Flag- Modul verwenden, wie unten beschrieben.
Schritt 1: Markieren Sie Knoten mit Kommentaren
Verwenden Sie das Flag- Modul, um ein (nicht globales) Flag mit einer Bezeichnung wie "Kommentar gesendet" (und Computername comment_submitted
) zu erstellen .
Schritt 2: Kommentarübermittlung registrieren
Verwenden Sie Regeln , um eine benutzerdefinierte Regel mit dem Regelereignis " Nach dem Speichern eines neuen Kommentars " zu erstellen .
Diese Regel sollte eine Regelaktion "Flag-Knoten" ausführen (unter Verwendung des in Schritt 1 erstellten Flags).
Schritt 3: Veröffentlichung weiterer Kommentare aufheben
Verwenden Sie Regeln , um eine benutzerdefinierte Regel zu erstellen, mit der die Veröffentlichung zusätzlicher Kommentare von Benutzern für Knoten aufgehoben wird, zu denen ein Benutzer zuvor Kommentare abgegeben hat (= Knoten, die vom Kommentarautor markiert wurden). Hier ist die Regel, die Sie dafür verwenden können (aktualisieren Sie im Exportformat Regeln den Computernamen des von Ihnen verwendeten Flags und importieren Sie ihn dann in Ihre eigene Site):
{ "rules_unpublish_additional_comments" : {
"LABEL" : "Unpublish additional comments",
"PLUGIN" : "reaction rule",
"ACTIVE" : false,
"OWNER" : "rules",
"REQUIRES" : [ "rules", "flag", "comment" ],
"ON" : { "comment_insert" : [] },
"IF" : [
{ "flag_flagged_node" : {
"flag" : "comment_submittedr",
"node" : [ "comment:node" ],
"flagging_user" : [ "comment:author" ]
}
}
],
"DO" : [ { "data_set" : { "data" : [ "comment:status" ], "value" : "0" } } ]
}
}
Hinweis : Diese Regel entspricht dem Titel von Schritt 3 (= Veröffentlichung zusätzlicher Kommentare aufheben ). Das Kommentarformular wird also nicht ausgeblendet (was auch in der Frage nicht explizit gestellt wird). Das Hinzufügen einer "gesetzten Nachricht" als zusätzliche Regelaktion könnte helfen, dies zu verdeutlichen. Gemäß dem Kommentar von OPer unter der Frage sollte diese Antwort veranschaulichen, dass es "einen" Weg gibt, ein ähnliches Ergebnis mit Regeln zu erzielen (die ich lieber verwenden würde, anstatt ein anderes Modul hinzuzufügen, das nur eine Entwicklungsversion hat).