Corsi on-line

WordPress: visualizzare post senza anteprime per categorie specifiche

Generalmente le categorie in WordPress vengono collegate a pagine che presentano la lista dei post classificati attraverso di esse; di solito, per semplificare il reperimento dei contenuti, tali articoli non vengono presentati per intero, ma attraverso un’anteprima (excerpt); l’utente avrà poi la possibilità di accedere al testo completo di ogni singolo articolo tramite link (in corrispondenza del titolo, attraverso il collegamento “Read more” e così via ).

wordpress

In determinati progetti potrebbe però risultare più pratico escludere la visualizzazione delle anteprime per alcune categorie, si pensi per esempio al caso in cui una di esse sia destinata ad ospitare un solo articolo; è quindi possibile visualizzare dei post senza anteprime soltanto per categorie specifiche? Certamente. Ciò sarà possibile grazie ad una funzione del Blog engine denominata the_content() che utilizzeremo in associazione ad un costrutto condizionale basato su is_category().

Se infatti la funzione the_excerpt() presiede alla generazione automatica delle anteprime, the_content() è stata concepita per ottenere il risultato opposto, cioè rendere visibile un articolo per intero; quindi, se per esempio desiderassimo non mostrare alcuna anteprima dei contenuti correlati alla categoria avente “5” come ID, potremmo aprire il file content.php del nostro tema e correggere la riga seguente:

<?php the_excerpt(); ?>

in

<?php if (is_category('5')) { ?>
<?php the_content(); ?>
<?php } else { ?>
<?php the_excerpt(); ?>
<?php } ?>

Quindi, se la categoria selezionata dovesse essere la “5” verrà richiamata la funzione the_content() (e non verrà prodotta alcuna anteprima), in caso contrario entrerà in gioco the_excerpt(); chiaramente, vi sarà sempre la possibilità di applicare la stessa regola a più categorie:

<?php if ( (is_category('5')) || (is_category('6')) ) { ?>

Si tenga comunque conto che the_excerpt() potrebbe essere richiamata in pagine diverse del tema rispetto a content.php, motivo per il quale in alcuni casi potrebbe essere necessaria una breve ricerca a livello di codice tra i diversi file che lo compongono.

Post correlati
I più letti del mese
Tematiche