wp_trim_excerpt( string $text = '', WP_Post|object|int $post = null )

Generates an excerpt from the content, if needed.


Description Description

Returns a maximum of 55 words with an ellipsis appended if necessary.

The 55 word limit can be modified by plugins/themes using the ‘excerpt_length’ filter The ‘ […]’ string can be modified by plugins/themes using the ‘excerpt_more’ filter


Parameters Parameters

$text

(string) (Optional) The excerpt. If set to empty, an excerpt is generated.

Default value: ''

$post

(WP_Post|object|int) (Optional) WP_Post instance or Post ID/object. Default is null.

Default value: null


Top ↑

Return Return

(string) The excerpt.


Top ↑

Source Source

File: wp-includes/formatting.php

function wp_trim_excerpt( $text = '', $post = null ) {
	$raw_excerpt = $text;
	if ( '' == $text ) {
		$post = get_post( $post );
		$text = get_the_content( '', false, $post );

		$text = strip_shortcodes( $text );
		$text = excerpt_remove_blocks( $text );

		/** This filter is documented in wp-includes/post-template.php */
		$text = apply_filters( 'the_content', $text );
		$text = str_replace( ']]>', ']]>', $text );

		/* translators: Maximum number of words used in a post excerpt. */
		$excerpt_length = intval( _x( '55', 'excerpt_length' ) );

		/**
		 * Filters the maximum number of words in a post excerpt.
		 *
		 * @since 2.7.0
		 *
		 * @param int $number The maximum number of words. Default 55.
		 */
		$excerpt_length = (int) apply_filters( 'excerpt_length', $excerpt_length );

		/**
		 * Filters the string in the "more" link displayed after a trimmed excerpt.
		 *
		 * @since 2.9.0
		 *
		 * @param string $more_string The string shown within the more link.
		 */
		$excerpt_more = apply_filters( 'excerpt_more', ' ' . '[…]' );
		$text         = wp_trim_words( $text, $excerpt_length, $excerpt_more );
	}

	/**
	 * Filters the trimmed excerpt string.
	 *
	 * @since 2.8.0
	 *
	 * @param string $text        The trimmed text.
	 * @param string $raw_excerpt The text prior to trimming.
	 */
	return apply_filters( 'wp_trim_excerpt', $text, $raw_excerpt );
}

Top ↑

Changelog Changelog

Changelog
Version Description
5.2.0 Added the $post parameter.
1.5.0 Introduced.


Top ↑

User Contributed Notes User Contributed Notes

  1. Skip to note 1 content
    Contributed by Amirhosseinhpv

    If we had excerpt already and just want to trim it into smaller amount, use this:

    	echo "Here is short info about post: \n" . wp_trim_excerpt($excerpt);
    

    and if not, you just need to use code like this, note the $id is id of the post

    	echo "Here is short info about post: \n" . wp_trim_excerpt("",$id);
    

You must log in before being able to contribute a note or feedback.