wordpress中文章摘要长度默认是55个,这对于中文来说,显然长度不太够,那么如何修改呢?
在模板中输出摘要的方法是the_excerpt(),我们可以找到方法源:wp-includes/formatting.php中的wp_trim_excerpt方法,其中应当有设置摘要长度的代码,可以找到55这个数字,这里的55就是摘要的长度了。
但是我并不建议修改系统方法里的代码,如果能在模板里修改就最好了,wordpress也提供了这样的支持。打开模板下的functions.php文件,增加如下代码:
function reset_excerpt_length($length) { return $new_length; } add_filter('excerpt_length', ' reset_excerpt_length ');
意思就是说,我需要重新设定摘要的长度,请在设定摘要长度时调用我添加的过滤方法。其中参数$length表示原始长度,$new_length表示新设定的长度,可以设置成自己需要的值。
有的童靴可能会担心截取摘要的时候出现半截html标签或者是截取到半个中文,出现乱码的情况。这个wordpress做的很好,截取摘要的时候,会去除html标签,并且支持国际化,所以不用担心。
转载请注明:快乐编程 » wordpress修改文章摘要长度,直接从模板入手
global $post;
$content = $post->post_content;
$words = explode(' ', $content, $excerpt_length + 1);
if(count($words) > $excerpt_length) :
array_pop($words);
array_push($words, '...');
$content = implode(' ', $words);
endif;
$content = strip_tags(strip_shortcodes($content));
return $content;
}
这个怎么修改?也是不支持中文?咱们文章没说怎么过滤,过滤方法是?