完美解决WordPress显示摘要问题

网上的方法有两个:

使用 more 标签手动截断文章,这个不是真正意义上的摘要,即在写文章的时候点击 More 来截断,点击就可以插入了。
用这种方法得到的“摘要”不能算是真正的摘要,因为很多文章的摘要并非正文的一部分。

修改主题中的index.php,把<?php the_content();?>或者<?php the_content(__('(more...)'));?>修改为<?php the_excerpt();?>
用这种方法所有的文章都会变成以摘要的方式显示,如果某一篇文章没有摘要,WordPress会把文章的前面一段弄成摘要在首页显示。

如果我只想让有摘要的文章显示摘要,而其它文章显示全文呢?

方法:
修改主题中的index.php;
把index.php中的<?php the_content();?>或者<?php the_content(__('(more...)'));?>显示文章的代码修改为

1
2
3
4
5
6
7
8
9
10
<?php
if(has_excerpt() and !is_single() and !is_page())
{
_e('Excerpt'); _e('Content'); the_excerpt();
echo "<p><a href=\""; the_permalink(); echo "\">"; _e('(more...)'); echo "</a></p>";
}
else{
the_content();
}
?>

在下php水平不高,代码比较简陋将就着用吧,如果有人能改得更好记得告诉我。

其中
has_excerpt()函数用于判断文章是否有摘要;
the_permalink()函数则为单篇文章链接。