通常的做法是使用the_excerpt()
而不是the_content()
在存档模板中,使用此过滤器更改摘录中出现的字数:
function wpse_280633_excerpt_length() {
return 20;
}
add_filter( \'excerpt_length\', \'wpse_280633_excerpt_length\' );
如果您希望坚持现有内容,而不将其应用于单个帖子视图,请使用以下组合
is_main_query()
和
is_singular()
要检查您是否在帖子列表中,请执行以下操作:
function wpse_280633_break_text( $content ) {
if ( is_main_query() && ! is_singular() ) {
$length = 500;
if(strlen($content)<$length+10) return $content;//don\'t cut if too short
$break_pos = strpos($content, \' \', $length);//find next space after desired length
$visible = substr($content, 0, $break_pos);
$content = balanceTags($visible) . "<a href=\'".get_permalink()."\'>read more</a> ";
}
return $content;
}
add_filter( \'the_content\', \'wpse_280633_break_text\' );