fatBuzz of Fatbuzz Development Team
12/18/2017 - 10:51 AM

Limit post excerpt to a fixed number of words

Copy truncate.php to functions.php, add new-excerpt.php to them site templates as required.

Update the argument in new-excerpt.php to update the number of words output.

<p class="excerpt"><?php echo excerpt(25); ?></p>
<?php 

    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;
    }
     
    function content($limit) {
      $content = explode(' ', get_the_content(), $limit);
      if (count($content)>=$limit) {
        array_pop($content);
        $content = implode(" ",$content).'...';
      } else {
        $content = implode(" ",$content);
      }	
      $content = preg_replace('/\[.+\]/','', $content);
      $content = apply_filters('the_content', $content); 
      $content = str_replace(']]>', ']]&gt;', $content);
      return $content;
    }