首发站点 扶凯[http://www.php-oa.com]

自定义WordPress摘要长度

上一篇 / 下一篇  2008-03-24 11:57:00 / 个人分类:WordPress

在WordPress的模板中,通常使用the_excerpt来显式当前文章的摘要。但摘要太长。下面就是讲讲如何把摘要变短。因为我原来用cublog,那个的很好用可以自己设置.下面我们也来设置wordpress吧。
我现在用的是版本是WordPress 2.3.1 ;

在wp-includes目录下找到formatting.php,里面有这样一个函数:

 

  1. function wp_trim_excerpt($text) {
  2. global $post;
  3. if ( ´´ == $text ) {
  4. $text = get_the_content(´´);
  5. $text = apply_filters(´the_content´, $text);
  6. $text = str_replace(´]]>´, ´]]>´, $text);
  7. $text = strip_tags($text);
  8. $excerpt_length =55;
  9. $words = explode(´ ´, $text, $excerpt_length + 1);
  10. if (count($words) > $excerpt_length) {
  11. array_pop($words);
  12. array_push($words, ´[...]´);
  13. $text = implode(´ ´, $words);
  14. }
  15. }
  16. return $text;
  17. }

它就是专门用来截取摘要长度的。把基本的“55”改成10就可以了。

为什么要减少这么多呢?这就要看第10行使用的count函数了。 它是按照空格(换行也相当于空格)来计数的。 在英文中,每个词之间都会有空格,所以遇到第三个空格时只会输出三个单词。 但中文就不一样的,句号后面都没有空格。唯一的空格发生在换行时。所以这样的设置就是把前面10行作为摘要输出。 当然,如果你在第一行里有很多空格,那么只会输出到第10个空格。


TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar