mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2026-04-07 06:05:42 +00:00
I18N: Allow the length of automatically generated excerpts to be localized.
This introduces three new strings that can be used to control the maximum length of automatically generated excerpts for posts, comments, and draft post previews in the dashboard. Optionally combined with the existing word count type control this allows languages which include many multibyte characters to specify more appropriate maximum excerpt lengths. Props miyauchi, birgire, johnbillion Fixes #44541 git-svn-id: https://develop.svn.wordpress.org/trunk@45505 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
@@ -577,42 +577,35 @@ function comment_date( $d = '', $comment_ID = 0 ) {
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieve the excerpt of the current comment.
|
||||
* Retrieves the excerpt of the given 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.
|
||||
* Returns a maximum of 20 words with an ellipsis appended if necessary.
|
||||
*
|
||||
* @since 1.5.0
|
||||
* @since 4.4.0 Added the ability for `$comment_ID` to also accept a WP_Comment object.
|
||||
*
|
||||
* @param int|WP_Comment $comment_ID WP_Comment or ID of the comment for which to get the excerpt.
|
||||
* Default current comment.
|
||||
* @return string The maybe truncated comment with 20 words or less.
|
||||
* @return string The possibly truncated comment excerpt.
|
||||
*/
|
||||
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 );
|
||||
|
||||
/* translators: Maximum number of words used in a comment excerpt. */
|
||||
$comment_excerpt_length = intval( _x( '20', 'comment_excerpt_length' ) );
|
||||
|
||||
/**
|
||||
* Filters the amount of words used in the comment excerpt.
|
||||
* Filters the maximum number 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 );
|
||||
$comment_excerpt_length = apply_filters( 'comment_excerpt_length', $comment_excerpt_length );
|
||||
|
||||
$use_ellipsis = count( $words ) > $comment_excerpt_length;
|
||||
if ( $use_ellipsis ) {
|
||||
$words = array_slice( $words, 0, $comment_excerpt_length );
|
||||
}
|
||||
$excerpt = wp_trim_words( $comment_text, $comment_excerpt_length, '…' );
|
||||
|
||||
$excerpt = trim( join( ' ', $words ) );
|
||||
if ( $use_ellipsis ) {
|
||||
$excerpt .= '…';
|
||||
}
|
||||
/**
|
||||
* Filters the retrieved comment excerpt.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user