Es wird versucht, ein benutzerdefiniertes Kommentarfeld zu erstellen. Wenn ich zur Anzeige der Uhrzeit gehe, zu der der Kommentar gepostet wurde (dh vor 2 Tagen, vor 3 Stunden usw.), erhalte ich für jeden Kommentar den gleichen Wert für jeden Beitrag: "48 Jahre".
$args = array(
'number' => '4',
'post_id' => $id, // use post_id, not post_ID
);
$comments = get_comments( $args );
foreach ( $comments as $comment ) :
// get the comments contents
echo $comment->comment_content;
// human readable time when it was posted
//
// this is where we get the "48 years" as when it was posted
//
echo human_time_diff( $comment->comment_date, current_time( 'timestamp', 1 ) );
endforeach;
Was ist damit?
Sie sollten strtotime
verwenden, um das Datum des Kommentars in eine Zeichenfolge umzuwandeln, die mit der aktuellen Uhrzeit verglichen werden kann. In Ihrem Fall sollten Sie verwenden:
echo human_time_diff( strtotime( $comment->comment_date ), current_time( 'timestamp', 1 ) );