Gibt es eine Möglichkeit, alle WordPress Post Kommentare in einem verschachtelten (threaded) PHP-Objekt oder Array zu bekommen?Gibt es eine Möglichkeit, alle Post-Kommentare in WordPress in einem verschachtelten PHP-Objekt oder Array zu bekommen?
Der Grund, warum ich ein verschachteltes Objekt brauche, liegt darin, dass dieses verschachtelte Objekt dann einfach an eine Template-Engine übergeben werden kann, um eine HTML-Vorlage mit allen Kommentaren und ihren verschachtelten Antworten korrekt anzuzeigen.
Die erforderliche/ideales Format für die Kommentare Objekt würde wie so sein:
{
"015":{
"comment_content":"Nullam in magna quis libero posuere vestibulum.",
"comment_date":"2016-05-13 00:20:32",
"other_comment_args":"...",
"replies":{
}
},
"837":{
"comment_content":"Nullam in magna quis libero posuere vestibulum.",
"comment_date":"2016-05-13 00:20:32",
"other_comment_args":"...",
"replies":{
"015":{
"comment_content":"Nullam in magna quis libero posuere vestibulum.",
"comment_date":"2016-05-13 00:20:32",
"other_comment_args":"...",
"replies":{
"015":{
"comment_content":"Nullam in magna quis libero posuere vestibulum.",
"comment_date":"2016-05-13 00:20:32",
"other_comment_args":"...",
"replies":{
}
},
"234":{
"comment_content":"Nullam in magna quis libero posuere vestibulum.",
"comment_date":"2016-05-13 00:20:32",
"other_comment_args":"...",
"replies":{
}
}
}
},
"125":{
"comment_content":"Nullam in magna quis libero posuere vestibulum.",
"comment_date":"2016-05-13 00:20:32",
"other_comment_args":"...",
"replies":{
}
},
"654":{
"comment_content":"Nullam in magna quis libero posuere vestibulum.",
"comment_date":"2016-05-13 00:20:32",
"other_comment_args":"...",
"replies":{
}
}
}
},
"785":{
"comment_content":"Nullam in magna quis libero posuere vestibulum.",
"comment_date":"2016-05-13 00:20:32",
"other_comment_args":"...",
"replies":{
"015":{
"comment_content":"Nullam in magna quis libero posuere vestibulum.",
"comment_date":"2016-05-13 00:20:32",
"other_comment_args":"...",
"replies":{
}
},
"231":{
"comment_content":"Nullam in magna quis libero posuere vestibulum.",
"comment_date":"2016-05-13 00:20:32",
"other_comment_args":"...",
"replies":{
}
},
"554":{
"comment_content":"Nullam in magna quis libero posuere vestibulum.",
"comment_date":"2016-05-13 00:20:32",
"other_comment_args":"...",
"replies":{
}
}
}
}
}
ich in ausgesehen haben mit der Wordpress-Funktion ‚get_comments‘. Dies liefert jedoch ein Array aller Kommentare auf einer einzigen Ebene. Alle untergeordneten Comments (Antwortkommentare) verfügen über die Eigenschaft "comment_parent" mit der ID des übergeordneten Kommentars. Hier sehen Sie, wie eine print_r des zurückgegebenen Werts der Funktion aussieht.
[1] => WP_Comment Object
(
[comment_ID] => 5644
[comment_parent] => 0
[comment_post_ID] => 332
[comment_author_email] => [email protected]
[comment_date] => 2016-05-13 00:20:32
[comment_content] => i. Nullam in magna quis libero posuere vestibulum. Donec mi leo, elementum ut.
)
[2] => WP_Comment Object
(
[comment_ID] => 8738
[comment_parent] => 5644
[comment_post_ID] => 332
[comment_author_email] => [email protected]
[comment_date] => 2016-05-13 00:20:32
[comment_content] => i. Nullam in magna quis libero posuere vestibulum. Donec mi leo, elementum ut.
)
[3] => WP_Comment Object
(
[comment_ID] => 7758
[comment_parent] => 5644
[comment_post_ID] => 332
[comment_author_email] => [email protected]
[comment_date] => 2016-05-13 00:20:32
[comment_content] => i. Nullam in magna quis libero posuere vestibulum. Donec mi leo, elementum ut.
)
Ein benutzerdefinierter Kommentar Gehhilfe kann hilfreich sein, aber ich komme ich nicht über irgendwelche Beispiele, bei denen ein Kommentar Gehhilfe ein verschachteltes Objekt mit Kommentaren Objekten bevölkern würde.
Vielen Dank im Voraus.
In dem Bemühen, Um Logik von Präsentationsmarkierung zu trennen, wollen wir eine verführerische Engine wie Zweig, Schnurrbart oder RegenTpl verwenden. Dies bedeutet, dass Theme-Ersteller einfache HTML-Vorlagen anstelle von gemischten PHP- und HTML-Dateien verwenden können. Vielleicht gibt es eine Möglichkeit, das Ergebnis von "get_comments" in ein hierarchisches verschachteltes Multi-Level-Objekt umzuformatieren. – Norman