excerpt_length not working

时间:2014-04-02 作者:bodesam

我正在尝试构建一个主题,我想通过在函数中执行类似操作来控制帖子摘录的长度。php:

function theme_excerpt_length( $length ) {
    return 45;
}
add_filter( \'excerpt_length\', \'theme_excerpt_length\', 999 );
但它似乎没有达到将摘录长度减少到45个单词的预期效果。即使没有这个功能,有些摘录也比默认的55个单词长。怎么了?

3 个回复
SO网友:Pieter Goosen

以下是两种快速显示主题中自定义摘录长度的方法,使用wp_trim_words. 记住,如果您使用the_excerpt(), 您的摘录长度将始终最大为55,永远不会超过。如果您使用the_content() 另一方面,您可以指定超过55个单词的摘录长度。

使用以下内容显示您的摘录。记住更换get_the_excerpt 具有get_the_content 如果您需要55以上的摘录,请替换<a href="\'. esc_url( get_permalink() ) . \'">\' . \'&nbsp;&hellip;\' . __( \'Read more &nbsp;&raquo;\', \'pietergoosen\' ) . \'</a> 任何你需要的摘录结尾。我的结尾会显示一个带有帖子名称的“阅读更多”文本。

function pietergoosen_custom_excerpts($limit) {
    return wp_trim_words(get_the_excerpt(), $limit, \'<a href="\'. esc_url( get_permalink() ) . \'">\' . \'&nbsp;&hellip;\' . __( \'Read more &nbsp;&raquo;\', \'pietergoosen\' ) . \'</a>\');
}
现在只需使用echo pietergoosen_custom_excerpts($limit); 模板中需要显示摘录的任何位置。只要换一下$limit 例如,实际字数echo pietergoosen_custom_excerpts(45); 显示45个单词

EDIT

看看我的answer 也在自定义摘录上

SO网友:Oturia

这是我用来控制摘录/内容长度的函数,特别是在最终用户可能不记得添加<!--more--> 标签,但主题的设计要求是。

function excerpt($limit) {
    $excerpt = explode(\' \', get_the_excerpt(), $limit);
    if (count($excerpt)>=$limit) {
        array_pop($excerpt);
        $excerpt = implode(" ",$excerpt).\'...\';
      } else {
        $excerpt = implode(" ",$excerpt);
      } 
    $excerpt = preg_replace(\'`\\[[^\\]]*\\]`\',\'\',$excerpt);
    return $excerpt;
    }
从此处,您可以从以下位置更改模板文件中的摘录代码:<?php the_excerpt();?>

。。。收件人:

<?php echo excerpt(25);?>

其中25是要显示的字符数。在设计主题时,我倾向于使用字符而不是单词,因为间距更为一致。

SO网友:Mahmood

如果您有自定义摘录,则;排泄长度“;过滤器不适用于它。您可以使用此筛选器修剪自定义摘录。

function custom_excerpt_length($excerpt) {
    if (has_excerpt()) {
        $excerpt = wp_trim_words(get_the_excerpt(), apply_filters("excerpt_length", 30));
    }
    return $excerpt;
}
add_filter("the_excerpt", "custom_excerpt_length", 999);
祝你好运!

结束

相关推荐

Strip shortcode from excerpt

我有一个挑战,我发现我不是网络上唯一一个有同样问题的人,然而,目前还没有解决方案。我正在尝试从我的自定义帖子类型摘录中删除短代码。以下是我的示例:http://guidepaperback.com/city/new-century-hotel/在侧边栏中有一个“邻居”小部件,它显示带有摘录的图像。。。一些人正在展示这个问题。有什么建议吗?提前感谢