如何在主页上只显示前X个单词(来自每个帖子)?

时间:2010-08-24 作者:Tal Galili

你怎么能让网站的主页只显示帖子的前X个字(比如300个字)?

但不使用“更多”标签,或手工填写的摘录?我正在寻找WP 2.9及更高版本的插件/黑客。

到目前为止,我遇到了几种解决方案,但我希望找到一种推荐的解决方案。

迄今为止,我遇到了很多挑战:

如果标签(例如)从单词295开始,在单词301之后结束,会发生什么情况

3 个回复
最合适的回答,由SO网友:John P Bloch 整理而成

更改主页上的字数很容易:

if( is_home() )
  add_filter( \'excerpt_length\', create_function( \'\', \'return 300;\' ) );
只需复制该代码并更改条件检查即可将其添加到其他页面。另一种选择是只在模板页面上插入代码(home.php, tag.php, 等等),所以您知道它将被设置在正确的页面上。

使用the_excerpt() 如果没有提供摘录,将自动从内容中删除短代码和html。您可以删除这些过滤器,但在将标记添加到组合中时,这会使字数计算变得更加困难。如果希望保留格式/文本/图像,则more 标签用于。它是手动插入的,因为在所有情况下都很难自动找出断点应该放在哪里。

SO网友:hakre

您可以使用Fancy Excerpt Plugin For WordPress 对此,请稍加修改。它保留了风格,进行字数计算。你只需要稍微修改一下就可以计算字数,如果你不喜欢省略号,也可以修改结尾。

SO网友:Geza Gog

如果你只需要内容的前300个单词,你可以很容易地得到它

wp_trim_words( $post->post_content, 300, \'\');

结束

相关推荐