Tag Archives: excerpt

Here is a snippet that will enable you to show a short intro (excerpt) of the WordPress author bio of a post and not the complete bio. With this snippet you can make an excerpt of the author bio, with a link to the author page, where you can see the full bio.

Instructions
Add this code to your functions.php

function author_excerpt (){	                     					
	$word_limit = 20; // Limit the number of words
	$more_txt = 'read more about:'; // The read more text
	$txt_end = '...'; // Display text end 
	$authorName = get_the_author();
	$authorUrl = get_author_posts_url( get_the_author_meta('ID'));
	$authorDescription = explode(" ", get_the_author_meta('description'));
	$displayAuthorPageLink = count($authorDescription) > $word_limit ? $txt_end.' '.$more_txt.' <a href="'.$authorUrl.'">'.$authorName.'</a>' : '' ;
	$authorDescriptionShort = array_slice($authorDescription, 0, ($word_limit));
	return (implode($authorDescriptionShort, ' ')).$displayAuthorPageLink; 		
}

Add this code to your post template file where you want to show the author bio excerpt.

<?php echo author_excerpt(); ?>

This snippet will allow you to set custom excerpt lengths in your excerpt tag in your WordPress template.

Instructions
Add this code to your functions.php file.

<?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(']]>', ']]>', $content);
      return $content;
    }
?>

And then use this syntax to invoke your custom excerpt length in your template:

<?php echo excerpt(35); ?>

This snippet will let you use multiple custom excerpts length of the WordPress excerpts output.

Instructions
Add this code to your functions.php file.

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(']]>', ']]>', $content);
      return $content;
    }

Then use this syntax (excerpt tag) to display the custom excerpt length in your WordPress theme. (where ie. 24 is the excerpt character length)
<?php echo excerpt(24);?>