La funzione the_excerpt () visualizza automaticamente le prime 55 parole di ogni post in tutte le serie di post come, ad esempio, nella home page, nelle pagine delle categorie o dei tag. La funzione the_excerpt () può essere usata, all’interno del proprio tema, come alternativa della funzione the_content().

Differenza tra le funzioni the_content(), sopra, e the_excerpt(), sotto.

La funzione the_excerpt()

Attenzione prima di modificare il tema crearne una copia di backup in modo da poterlo ripristinare in caso di errori.

Usare la funzione the_excerpt () nel tema

Se si desidera utilizzare questa funzione, aprire in un editor i modelli del proprio tema relativi ai contenuti e sostituire la funzione the_content() con la funzione the_excerpt().

<!-- … -->
 <div class="content">
 <?php the_content("Continua a leggere ..."); ?>
 </div>
<!-- … -->
Per modificare il tema attraverso l’interfaccia di amministrazione si può utilizzare un plugin come Wp Editor che tra le numerose caratteristiche disponibili consente di:
  • scaricare un file o un tema
  • caricare un file
  • creare un tema (la funzione va abilitata nelle opzioni del plugin)

La funzione the_excerpt () non stampa però un link alla versione completa del post come la funzione the_content(). Per stampare un collegamento al singolo post creare un link al singolo post mediante la funzione get_permalink().

<!-- … -->
<div class="content">
  <?php the_excerpt(); ?>
  <a href="<?php echo get_permalink(); ?>"> Continua a leggere...</a>
</div>
<!-- … -->

In alternativa è possibile inserire un filtro, come quello mostrato di seguito, nel file functions.php del proprio tema.

function my_excerpt($more) {
   return '<a class="more" href="'. get_permalink( get_the_ID() ) . '"> Continua a leggere</a>';
}
add_filter('excerpt_more', 'my_excerpt');

La funzione the_excerpt() viene usata spesso insieme alle funzioni condizionali per stampare automaticamente un estratto del post solo quando viene visualizzato un determinato tipo di contenuto.

<?php if (is_archive()) {
      the_excerpt();
} else {
      the_content();
} ?>

Nell’esempio la prima parte del post viene mostrata solo quando vengono visualizzati gli archivi e non per le altre visualizzazioni (home page, risultati delle ricerche, …).

Modificare il numero di parole restituite da the_excerpt()

Il numero predefinito di parole ritornate da the_excerpt() è 55 ma può essere modificato inserendo un filtro. Aprire il file  functions.php del proprio tema e inserire al suo interno il seguente codice.

function my_excerpt_length($length) {
      return 100;
}
add_filter('excerpt_length', 'my_excerpt_length', 999 );

Ora la funzione the_excerpt() restituirà 100 parole.

Per altre informazioni consultare la pagina presente nella documentazione ufficiale di WordPress.