A WordPress-centric search engine for devs and theme authors



get_comment_excerpt ›

Since1.5.0
Deprecatedn/a
get_comment_excerpt ( $comment_ID = 0 )
Parameters:
  • (int|WP_Comment) $comment_ID WP_Comment or ID of the comment for which to get the excerpt. Default current comment.
    Required: No
    Default:
Returns:
  • (string) The maybe truncated comment with 20 words or less.
Defined at:
Codex:
Change Log:
  • 4.4.0

Retrieve the excerpt of the current comment.

Will cut each word and only output the first 20 words with '…' at the end. If the word count is less than 20, then no truncating is done and no '…' will appear.



Source

function get_comment_excerpt( $comment_ID = 0 ) {
	$comment      = get_comment( $comment_ID );
	$comment_text = strip_tags( str_replace( array( "\n", "\r" ), ' ', $comment->comment_content ) );
	$words        = explode( ' ', $comment_text );

	/**
	 * Filters the amount of words used in the comment excerpt.
	 *
	 * @since 4.4.0
	 *
	 * @param int $comment_excerpt_length The amount of words you want to display in the comment excerpt.
	 */
	$comment_excerpt_length = apply_filters( 'comment_excerpt_length', 20 );

	$use_ellipsis = count( $words ) > $comment_excerpt_length;
	if ( $use_ellipsis ) {
		$words = array_slice( $words, 0, $comment_excerpt_length );
	}

	$excerpt = trim( join( ' ', $words ) );
	if ( $use_ellipsis ) {
		$excerpt .= '…';
	}
	/**
	 * Filters the retrieved comment excerpt.
	 *
	 * @since 1.5.0
	 * @since 4.1.0 The `$comment_ID` and `$comment` parameters were added.
	 *
	 * @param string     $excerpt    The comment excerpt text.
	 * @param int        $comment_ID The comment ID.
	 * @param WP_Comment $comment    The comment object.
	 */
	return apply_filters( 'get_comment_excerpt', $excerpt, $comment->comment_ID, $comment );
}