[WordPress] 自定义WordPress摘要长度
转载本站文章请注明,转载自:扶凯[http://www.php-oa.com]
本文链接: http://www.php-oa.com/2007/12/08/zidingyiwordpresszhaiyaochangdu.html
新的方法,更新日期7月4日,版本WordPress2.5.
找到你模板中的index.php下面的这句
<?php the_content(’Read the rest of this entry »’); ?>
修改为
<?php the_excerpt();?>
下面是以前的旧方法
在WordPress的模板中,通常使用the_excerpt来显式当前文章的摘要.但摘要太长.下面就是讲讲如何把摘要变短.因为我原来用 cublog,那个的很好用可以自己设置.下面我们也来设置wordpress吧.我现在用的是版本是WordPress 2.3.1 ; 在wp-includes目录下找到formatting.php,里面有这样一个函数:
- function wp_trim_excerpt($text) {
- global $post;
- if ( ” == $text ) {
- $text = get_the_content(”);
- $text = apply_filters(‘the_content‘, $text);
- $text = str_replace(‘]]>‘, ‘]]>‘, $text);
- $text = strip_tags($text);
- $excerpt_length =55;
- $words = explode(‘ ‘, $text, $excerpt_length + 1);
- if (count($words) > $excerpt_length) {
- array_pop($words);
- array_push($words, ‘[...]‘);
- $text = implode(‘ ‘, $words);
- }
- }
- return $text;
- }
它就是专门用来截取摘要长度的.把基本的“55”改成10就可以了. 为什么要减少这么多呢?这就要看第10行使用的count函数了. 它是按照空格(换行也相当于空格)来计数的. 在英文中,每个词之间都会有空格,所以遇到第三个空格时只会输出三个单词. 但中文就不一样的,句号后面都没有空格.唯一的空格发生在换行时.所以这样的设置就是把前面10行作为摘要输出. 当然,如果你在第一行里有很多空格,那么只会输出到第10个空格.



















用了,但是没效果啊,不知道怎么回事
要用新的方法.有空可以加我的qq,我教你147492361
找了很久。也没找到这个的解决方法。
从你这才发现一开始,自己找错了方向了,找的是the_content()的用法,
现在解决了,我遇到的难题了,,
真要谢谢你了、、、
好办法。只是wordpress更新频繁,这样直接修改核心代码可能会在将来带来更多无谓的麻烦。
我首页是可以生成摘要,但列表页还是不变?怎么回事?难道要对列表页单独再设置下?
我不知你指的什么,可能你需要装一个中文插件
我用的是3.1.3版本的,要在哪里改呢?