如何获得get_the_content字数限制

时间:2018-11-09 12:14:31

标签: php wordpress

我有一个get_the_content()WordPress代码,如下所示。我想强制代码执行以下操作:

  • 不将空标签显示为nbsp; (现在可以使用)
  • 仅显示有限数量的单词(不知道如何操作)

我将此代码添加到了home.php:

<?php 
$content = get_the_content('Read more');
$content = str_replace('&nbsp;'," ", get_the_content());
$content = preg_replace( '/\s+/', ' ', $content );
echo $content; 
?>

它可以工作,但是我现在只想显示有限的单词数。 $ char_limit和wp_trim_words()之类的所有解决方案都不是我想要的解决方案,因为它们将博客帖子弄得一团糟。

我该怎么办?

2 个答案:

答案 0 :(得分:0)

使用此便捷实用工具功能来限制此处Get first 100 characters from string, respecting full words

中描述的单词的单词数
function truncate($text, $length) {
   $length = abs((int)$length);
   if(strlen($text) > $length) {
      $text = preg_replace("/^(.{1,$length})(\s.*|$)/s", '\\1...', $text);
   }
   return(str_replace('&nbsp;'," ", $text));
}

传递

之类的值
$content = get_the_content('Read more');
print_r(truncate($content, 180));

答案 1 :(得分:0)

function limitText($text, $limit)
{
    $count = strlen($text);
    if ($count >= $limit) {
        $text = substr($text, 0, strrpos(substr($text, 0, $limit), ' ')) . '...';

        return $text;
    } else {
        return $text;
    }
}

回声

 <?= limitText(get_the_content(), 30); ?>