在对当前帖子应用了多个过滤器后显示当前帖子的摘录,包括自动p格式,该格式将双换行符转换为HTML段落。如果没有明确的摘录,它将使用get_the_excerpt()首先生成完整的帖子内容的精简版。
- 所需函数:
the_excerpt()
- 函数文档:官方文档
精简版本的末尾包含“更多”标签,默认情况下为[…]或“螺旋”符号。默认情况下,用户提供的摘录不是这样的符号。要增加它,您必须修改原始$后> post_excerpt手动之前调用模板the_excerpt() ,添加一个过滤器“get_the_excerpt”与优先级低于10,或添加过滤器“wp_trim_excerpt”(比较第一个和第二个参数,因为此功能不会以任何方式更改用户提供的摘录)。
使用方法:
在日志的循环内输入:
<?php the_excerpt(); ?>
WordPress的显示摘要函数the_excerpt() 用的比较多,调用时,在循环内使用即可,并且不需要参数,但是默认他只显示55个字符,并且末尾以[...]结尾,若对这两个更改只需要在主题的functions.php增加以下两小段函数即可:
重新定义摘要的字数(78):
function wpdocs_custom_excerpt_length( $length ) {
return 78;
}
add_filter( 'excerpt_length', 'wpdocs_custom_excerpt_length', 999 );
使用过滤器控制摘录长度
默认情况下,摘录长度设置为55个字。要使用excerpt_length
过滤器
将摘要长度更改为20个字,请将以下代码添加到functions.php
重新定义结尾符号,改为文章的链接:
function wpdocs_excerpt_more( $more ) {
if ( ! is_single() ) {
$more = sprintf( '<a class="read-more" href="%1$s">%2$s</a>',
get_permalink( get_the_ID() ),
__( 'Read More', 'textdomain' )
);
}
return $more;
}
add_filter( 'excerpt_more', 'wpdocs_excerpt_more' );
使“Read More”字符串链接到该帖子:
将其放置在主题中functions.php
以使“更多”链接链接到该帖子
通用判断:
- 参考链接:https://blog.csdn.net/pengxiao87/article/details/86319969
<?php
if (has_excerpt()) {
echo $description = get_the_excerpt(); //文章编辑中的摘要
}else {
echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 170,"……"); //文章编辑中若无摘要,自定截取文章内容字数做为摘要
}
?>
函数介绍:
有关更多详细信息,请参见get_the_excerpt()。
自动生成的摘录还将删除所有短代码和标签。它被修整为一个单词边界,默认长度为55个单词。对于使用(或可以用)单个字符描述单词的语言(即东亚语言),单词边界实际上就是字符。
注意:如果当前帖子是附件(例如,attachment.php和image.php模板循环中的附件),则显示附件标题。字幕不包含“ […]”文本。
与<!– more–> quicktag的
摘录提供了使用<!- more- > quicktag 的替代方法。尽管此more标签需要帖子作者在帖子内容中手动创建“拆分”,然后将其用于在索引页面上生成“更多信息”链接,但摘录要求(但不一定要求)帖子作者来提供完整帖子内容的“预告片”。
该<! -更多- > quicktag需要模板使用the_content()而使用摘录要求,并允许,模板作家明确选择是否显示完整的帖子(使用the_content() )或摘录(使用the_excerpt() )。
然后可以基于诸如所使用的模板,页面的类型,帖子的类别等因素来选择是显示完整的帖子还是摘录。换句话说,使用<!- more- >快速标签,作者可以自行决定要发生的事情,而模板作者可以控制摘录。而且,尽管<!-more->可以用于使用$ stripteaser参数创建实际的拆分,但是根据特征进行区分将非常困难且复杂,这导致它成为基本上整个站点的选择。
补充:
- 参考文档:https://blog.csdn.net/csnewdn/article/details/56482732
输出当前文章的摘要,并会附上”[…]”,这不是”更多”的链接。如果你没提供一篇文章明确的摘要(后台文章编辑器的可选摘要区域),它将自动摘录文章内容中前55个字作为摘要。而HTML标签和图片都会从摘要内容中去除。此标签必须用在主循环里。