Tutorial WordPress affidabili, quando ne hai più bisogno.
Guida per principianti a WordPress
WPB Cup
25 Milioni+
Siti web che utilizzano i nostri plugin
16+
Anni di esperienza con WordPress
3000+
Tutorial WordPress di esperti

Come mostrare gli ultimi post come menu a discesa in WordPress

Probabilmente hai familiarità con il widget Categorie in WordPress. Recentemente, uno dei nostri lettori ci ha chiesto se fosse possibile visualizzare anche gli articoli recenti in un menu a discesa. In questo articolo, ti mostreremo come visualizzare gli articoli recenti come menu a discesa in WordPress.

Aggiungi articoli recenti come menu a discesa

Perché e chi ha bisogno degli articoli recenti in un menu a discesa?

WordPress viene fornito con un widget integrato per gli articoli recenti che puoi aggiungere a qualsiasi barra laterale o area predisposta per i widget.

Questo widget visualizza semplicemente un elenco di articoli recenti e puoi scegliere il numero di articoli che desideri mostrare. Ma se vuoi mostrare più di 5-10 articoli, l'elenco occuperà molto spazio nella tua barra laterale.

Alcuni utenti di WordPress potrebbero aver bisogno di un modo compatto per visualizzare gli articoli recenti. In tal caso, l'utilizzo di menu a discesa o elenchi comprimibili può aiutarti a risparmiare spazio.

Diamo un'occhiata a un paio di modi diversi per mostrare gli articoli recenti come menu a discesa in WordPress.

Visualizzare gli articoli recenti di WordPress in un semplice menu a discesa (codice manuale)

Questo metodo utilizza la funzione integrata wp_get_recent_posts. Tutto ciò che devi fare è copiare e incollare il seguente codice nel file functions.php del tuo tema o in un plugin specifico per il sito.

function wpb_recentposts_dropdown() { 
$string .= '<select id="rpdropdown">
			<option  value="" selected>Select a Post</option>';

$args = array( 'numberposts' => '5', 'post_status' => 'publish' );

$recent_posts = wp_get_recent_posts($args);
	foreach( $recent_posts as $recent ){
		$string .= '<option value="' . get_permalink($recent["ID"]) . '">' .   $recent["post_title"].'</option> ';
	}

$string .= '</select>
			<script type="text/javascript"> var urlmenu = document.getElementById( "rpdropdown" ); urlmenu.onchange = function() {
      		window.open( this.options[ this.selectedIndex ].value, "_self" );
 			};
			</script>';

return $string;
} 
add_shortcode('rp_dropdown', 'wpb_recentposts_dropdown');
add_filter('widget_text','do_shortcode');

Ora puoi utilizzare lo shortcode [rp_dropdown] nei tuoi articoli, pagine e widget di testo di WordPress. Avrà questo aspetto:

Articoli recenti in un menu a discesa su un sito WordPress

Aggiungere articoli recenti comprimibili utilizzando un plugin

Il metodo sopra elenca semplicemente i tuoi post recenti in un menu a discesa. Un altro modo per risparmiare spazio è aggiungere un elenco comprimibile di post recenti che si espande quando gli utenti ci cliccano sopra.

La prima cosa da fare è installare e attivare il plugin Collapse-O-Matic. Funziona subito e non ci sono impostazioni da configurare.

Il plugin ti permette semplicemente di mostrare qualsiasi cosa in un menu comprimibile utilizzando uno shortcode.

Prima di utilizzare questo plugin, abbiamo bisogno di un modo per mostrare facilmente i post recenti ovunque vogliamo. Aggiungi semplicemente questo codice al file functions.php del tuo tema o a un plugin specifico per il sito.

function wpb_recentposts() { 

$string .= '<ul>';
$args = array( 'numberposts' => '5', 'post_status' => 'publish' );
$recent_posts = wp_get_recent_posts($args);
	foreach( $recent_posts as $recent ){
		$string .= '<li><a href="' . get_permalink($recent["ID"]) . '">' .   $recent["post_title"].'</a></li> ';
	}
$string .= '</ul>';
return $string;
} 
add_shortcode('recentposts', 'wpb_recentposts');
add_filter('widget_text','do_shortcode');

Questo codice ti permette semplicemente di visualizzare un elenco di post recenti utilizzando lo shortcode [recentposts].

Ora aggiungeremo il nostro shortcode nello shortcode di Collapse-O-Matic per creare un elenco comprimibile di post recenti.

Aggiungi semplicemente lo shortcode in questo modo:

[expand title="Post Recenti"][recentposts][/expand]

Puoi aggiungere questo shortcode in un widget di testo, nei post o nelle pagine del tuo sito WordPress. Ecco come appariva sul nostro sito di prova.

Elenco comprimibile di articoli recenti

Tutto qui, speriamo che questo articolo ti abbia aiutato a mostrare i post recenti come menu a discesa in WordPress. Potresti anche voler vedere questi 6 consigli per creare un calendario editoriale efficace in WordPress.

Se ti è piaciuto questo articolo, iscriviti al nostro Canale YouTube per tutorial video su WordPress. Puoi anche trovarci su Twitter e Facebook.

Dichiarazione: Il nostro contenuto è supportato dai lettori. Ciò significa che se fai clic su alcuni dei nostri link, potremmo guadagnare una commissione. Vedi come è finanziato WPBeginner, perché è importante e come puoi supportarci. Ecco il nostro processo editoriale.

Il Toolkit WordPress Definitivo

Ottieni l'accesso GRATUITO al nostro toolkit - una raccolta di prodotti e risorse relative a WordPress che ogni professionista dovrebbe avere!

Interazioni del lettore

18 CommentsLeave a Reply

  1. Gentile autore,
    c'è un errore di battitura alla riga 2 della tua funzione wpb_recentposts_dropdown():
    dovrebbe essere " $string = … " invece di " $string .= … "

    • .= e = hanno usi leggermente diversi. In questo caso d'uso non è un errore di battitura.

      Amministratore

  2. Ciao,

    Ho installato il collapse-o-mattic e incollato il codice nel file functions.php.
    Dopo di che ho incollato lo shortcode [expand title=”Recent Posts”][recentposts][/expand] in un textwidget, ma non è successo niente.
    Mi manca qualcosa?

    Cordiali saluti, Yvonne

    • Dovresti inserire lo shortcode nell'editor di testo anziché nell'editor visuale per assicurarti che lo stile non impedisca il corretto funzionamento dello shortcode.

      Amministratore

  3. La riga 3 presenta un errore. Manca la chiusura "/" per il tag option. Questo sta generando un'opzione vuota nel menu.

  4. Ciao. Ho usato il codice sopra per mostrare tutti i miei post in un menu a tendina, ma non sono ordinati. Ho due domande qui:
    1. Come posso ordinare i post per titolo?
    2. Come posso mostrare i post di una categoria specifica nel menu a tendina invece di mostrare tutti i post?

  5. Bel articolo! Come si può fare per una categoria specifica e non solo per tutte le tue categorie? Inoltre, si può fare in ordine alfabetico?

  6. Grazie mille per l'ottimo aiuto. Vorrei anche visualizzare le categorie in un elenco a discesa, se puoi aiutarmi con questo... Ma ora, se aggiorno il mio Wordpress, è possibile? Ho visto da qualche parte che parlavano di sfide nell'aggiornare Wordpress e rischiare di perdere dati a causa della codifica manuale delle funzioni PHP.

  7. Ottimo strumento, grazie!
    È possibile ordinare l'output dei post nell'elenco in ordine alfabetico?
    Grazie in anticipo per la tua risposta!

    Saluti,
    Robert

  8. È possibile mostrare il menu a tendina degli articoli con un pulsante per inviare?

    ‘function wpb_recentposts_dropdown() { $string .= ‘ Seleziona la tua scuola’

    $args = array( ‘numberposts’ => ‘5’, ‘post_status’ => ‘publish’ );

    $recent_posts = wp_get_recent_posts($args); foreach( $recent_posts as $recent ){ $string .= ” . $recent[“post_title”].’ ‘; }

    $string .= ‘ TROVA LA SCUOLA ORA var urlmenu = document.getElementById( “submitschool” ); urlmenu.onclick = function() { window.open( this.options[ this.selectedIndex ].value, “_self” ); }; ‘;

    return $string; } add_shortcode(‘rp_dropdown’, ‘wpb_recentposts_dropdown’); add_filter(‘widget_text’,’do_shortcode’);

  9. È un articolo eccellente. I principianti come me possono capire la potenza di WordPress e dei suoi plug-in grazie a questi articoli.

    Sarei illuminato se alcuni articoli fossero scritti per visualizzare un messaggio su una pagina specifica e non su tutti i post e le pagine.

    Aiuterebbe anche i principianti se alcuni articoli fossero scritti per visualizzare un modulo per l'inserimento dell'utente che possa essere salvato nel database

  10. Mi piace molto il menu a discesa degli articoli recenti. Come posso controllare la larghezza di questo menu a discesa? Di default è troppo lungo per la mia barra laterale.

Lascia un commento

Grazie per aver scelto di lasciare un commento. Tieni presente che tutti i commenti sono moderati secondo la nostra politica sui commenti, e il tuo indirizzo email NON verrà pubblicato. Si prega di NON utilizzare parole chiave nel campo del nome. Avviamo una conversazione personale e significativa.