wp_trim_excerpt

函数
wp_trim_excerpt ( $text = '', $post = null )
参数
  • (string) $text Optional. The excerpt. If set to empty, an excerpt is generated.
    Required:
    Default: (empty)
  • (WP_Post|object|int) $post Optional. WP_Post instance or Post ID/object. Default null.
    Required:
    Default: null
返回值
  • (string) The excerpt.
定义位置
相关方法
wp_html_excerptthe_excerptget_the_excerptwp_embed_excerpt_morewp_print_scripts
引入
1.5.0
弃用
-

wp_trim_excerpt: 这个函数用于根据一个文章的内容,生成一个摘录: 该函数将寻找文章的前55个字,如果没有设置摘录,它将使用这55个字作为摘录。

如果需要的话,从内容中生成一个摘录。

返回最多55个字的内容,必要时附加省略号。

插件/主题可以使用{@see ‘excelpt_length’}过滤器来修改55字的限制。
插件/主题可以使用{@see ‘excelerpt_more’}过滤器修改'[…]’字符串。

function wp_trim_excerpt( $text = '', $post = null ) {
	$raw_excerpt = $text;

	if ( '' === trim( $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 = (int) _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 );
}

常见问题

FAQs
查看更多 >