Show short text of content

时间:2015-09-12 作者:hronikata

我需要从News 分类并在侧栏中显示它们。我使用下面的代码

<?php $news_id = get_cat_ID(\'News\');
    if($news_id) {
        echo \'<div class="entry-title"><a href="\'.get_category_link( $news_id ).\'">\'.get_the_category_by_ID( $news_id ).\'</a></div>\'; 

        $recent_news = wp_get_recent_posts( array(\'numberposts\' => 2, \'category\' => $news_id, \'post_status\' => \'publish\'));

        if ($recent_news) {
            echo \'<ul class="sidebar-posts-list">\';
            foreach ($recent_news as $news_item) {
                echo \'<li><div class="item-title">\' .  $news_item["post_title"].\'</div>\';
                echo \'<div class="item-text">\' . wp_trim_words( $news_item["post_content"], 20 ) . \'</div>\';            
                echo \'<a href="\' . get_permalink($news_item["ID"]) . \'" class="read-more">Read more</a></li>\';  
            }
            echo \'</ul>\';
        }
}?>
但我不确定wp_trim_words( $news_item["post_content"], 20 ) 是得到我想要的东西的正确方式。这是可行的,但我不确定它是否正确。也许有更好的方法?

1 个回复
最合适的回答,由SO网友:Milo 整理而成

我看到的一个潜在问题是,内容是否包含Shortcodes.

你可以strip Shortcodes 在将其传递给wp_trim_words 如果您想删除它们,或者如果您想维护它们,您可以apply the Shortcodes 预先

您可能还想检查一下$news_item["post_excerpt"] 不为空,以防输入了自定义摘录来代替自动修剪版本。

相关推荐

是否可以取消对特定帖子类型的POSTS_PER_PAGE限制?

我想知道我是否可以取消特定帖子类型的posts\\u per\\u页面限制。在存档中。php页面我显示不同的帖子类型,对于特定的“出版物”帖子类型,我想显示所有帖子。我如何在不影响传统“post”类型的情况下实现这一点?