Template Tags/the excerpt
本主题由 纵云 创建于 2009-11-22 17:42:21Description
Displays the excerpt of the current post with [...] at the end, which is not a "read more" link. If you do not provide an explicit excerpt to a post (in the post editor's optional excerpt field), it will display a teaser which refers to the first 55 words of the post's content. Also in the latter case, HTML tags and graphics are stripped from the excerpt's content. This tag must be within The Loop.
Note: If the current post is an attachment, such as in the attachment.php and image.php template loops, then the attachment caption is displayed. Captions do not include the excerpt [...] marks.
the_excerpt() vs. the_content()
Sometimes it is more meaningful to use only the_content() function. the_content() will decide what to display according to whether <!--more--> tag was used. The <!--more--> tag splits post/page into two parts: only content before the tag should be displayed in listing. Remember that <!--more--> is (of course) ignored when showing single post/page.
Usage
<?php the_excerpt(); ?>
Parameters
This tag has no parameters.
Examples
Default Usage
Displays the post excerpt. Used on non-single/non-permalink posts as a replacement for the_content() to force excerpts to show within the Loop.
<?php the_excerpt(); ?>
Use with Conditional Tags
Replaces the_content() tag with the_excerpt() when on archive (tested by is_archive() ) or category (tested by is_category() ) pages.
Both the examples below work for versions 1.5 and above.
<?php if ( is_category() || is_archive() ) {
the_excerpt();
} else {
the_content();
} ?>
For versions of WordPress prior to 1.5, only the following will work :
<?php if ( $cat || $m ) {
the_excerpt();
} else {
the_content();
} ?>
Control Excerpt Length using Filters
By default, excerpt length is set to 55 words. To change excerpt length using excerpt_length filter, add the following code to functions.php file in your theme:
function new_excerpt_length($length) {
return 20;
}
add_filter('excerpt_length', 'new_excerpt_length');
Remove [...] string using Filters
Only in version 2.9 and higher of WordPress
By default, excerpt more string at the end is set to '[...]'. To change excerpt more string using excerpt_more filter, add the following code to functions.php file in your theme:
function new_excerpt_more($more) {
return '[.....]';
}
add_filter('excerpt_more', 'new_excerpt_more');
For versions 2.8.x and Older
function new_excerpt_more($excerpt) {
return str_replace('[...]', '...', $excerpt);
}
add_filter('wp_trim_excerpt', 'new_excerpt_more');
Notes
Uses: get_the_excerpt.
Uses: apply_filters() for 'the_excerpt'.
Change Log
Since: 0.71
Source File
the_excerpt() is located in wp-includes/post-template.php.
http://codex.wordpress.org/Template_Tags/the_excerpt
放心注册,GeeKaa不会虚耗你半点时间,你只会发现更多乐趣。 | 立即注册 |