Ogni contenuto che pubblichi merita una possibilità di essere scoperto, anche mesi o anni dopo. Ma se i tuoi archivi di WordPress sono solo un elenco di base nascosto nella tua barra laterale, rendi più difficile per i visitatori trovare e apprezzare i tuoi vecchi post.
I tuoi archivi possono essere molto più di un semplice elenco cronologico.
Possono guidare i lettori verso argomenti che li interessano, mostrare i tuoi contenuti più popolari e persino incoraggiare le persone a dedicare più tempo all'esplorazione del tuo sito.
Lo sappiamo per esperienza perché abbiamo una pagina archivi dedicata su WPBeginner. Abbiamo visto in prima persona come un archivio possa fare una reale differenza nella scoperta dei contenuti.
Pronto a dare un aggiornamento ai tuoi archivi? Ti mostreremo come personalizzare la visualizzazione dei tuoi archivi WordPress con tecniche semplici che non richiedono alcuna competenza tecnica.

Perché personalizzare la visualizzazione degli archivi di WordPress nella tua barra laterale?
Gli archivi di WordPress organizzano automaticamente i tuoi post per data, rendendo facile per i visitatori trovare contenuti più vecchi.
Molti proprietari di siti aggiungono una barra laterale al loro sito WordPress e includono un widget di archivi in quest'area per un rapido accesso ai post passati.
Tuttavia, la visualizzazione predefinita degli archivi nella tua barra laterale può spesso essere troppo lunga e poco intuitiva, specialmente per i siti con contenuti estesi. Un semplice elenco di mesi e anni può diventare rapidamente opprimente e poco attraente per gli utenti.
Personalizzando gli archivi della tua barra laterale sul tuo sito WordPress, puoi evitare che l'elenco degli archivi diventi troppo lungo e intimidatorio.
Una sezione archivi ben progettata può anche migliorare l'esperienza utente, incoraggiando i visitatori a esplorare ulteriormente i tuoi contenuti.
Tenendo presente questo, vediamo come puoi personalizzare la visualizzazione degli archivi di WordPress nella tua barra laterale:
- Opzione 1: Personalizza il blocco archivi predefinito (senza plugin)
- Opzione 2: Crea una visualizzazione compatta degli archivi
- Opzione 3: Visualizza gli archivi in un menu a scomparsa
- Opzione 4: Limita il numero di mesi di archivi visualizzati
- Opzione 5: Visualizza menu a discesa per archivi mensili e annuali
- Option 6: Display Monthly Archives Arranged by Year
Opzione 1: Personalizza il blocco archivi predefinito (senza plugin)
Il blocco o widget archivi predefinito di WordPress è dotato di opzioni per personalizzare l'aspetto degli archivi.
Se utilizzi un tema classico, puoi vedere queste impostazioni andando su Aspetto » Widget per aprire l'editor di widget basato su blocchi.
Quindi, fai clic sul pulsante '+' per aggiungere il blocco 'Archivi' nella barra laterale in WordPress.

Nel pannello delle impostazioni del blocco a destra, vedrai le opzioni per visualizzare gli archivi come menu a discesa, mostrare l'etichetta degli archivi e mostrare il numero di post pubblicati in ogni periodo.
Puoi anche avere gli archivi visualizzati per anno, mese, settimana o giorno.

Una volta che sei soddisfatto di come appaiono gli archivi sul tuo blog WordPress, puoi fare clic su 'Aggiorna'.
Ecco come appaiono gli archivi predefiniti di WordPress nella barra laterale del tuo blog quando li personalizzi:

Se utilizzi un tema a blocchi, allora puoi semplicemente usare lo stesso blocco 'Archivi' e aggiungerlo al modello che ha una barra laterale nell'editor del sito completo. Le impostazioni sono esattamente le stesse.
Puoi leggere la nostra guida completa all'editing completo del sito di WordPress per maggiori informazioni.
Queste impostazioni predefinite potrebbero andare bene per un blog di base. Tuttavia, non sono sufficienti se hai molti contenuti da gestire o desideri maggiori opzioni di personalizzazione.
Se stai cercando altri modi per personalizzare la visualizzazione degli archivi, continua a leggere.
Opzione 2: Crea una visualizzazione compatta degli archivi
Se il tuo elenco di archivi è diventato troppo lungo, puoi creare un archivio compatto che visualizza i tuoi post occupando molto meno spazio.
Dovrai installare e attivare il plugin Compact Archives. Abbiamo sviluppato questo plugin noi stessi e ha funzionato bene per oltre 2.000 utenti.
Per ulteriori istruzioni sull'installazione, consulta la nostra guida passo passo su come installare un plugin di WordPress.
Una volta che il plugin è attivo, puoi aggiungere gli archivi compatti alla barra laterale del tuo tema utilizzando il blocco 'Archivi compatti di WPBeginner'. Questo blocco è disponibile sia nell'editor dei widget basato su blocchi che nell'editor del sito completo.

Puoi quindi modificare l'aspetto degli archivi compatti.
Ad esempio, potresti scegliere di visualizzare le prime iniziali del mese, la prima lettera del mese o il numero del mese.

Una volta terminato, fai semplicemente clic su 'Aggiorna' o 'Salva'.
Per maggiori dettagli sul plugin, consulta la nostra guida su come creare archivi compatti in WordPress.

Opzione 3: Visualizza gli archivi in un menu a scomparsa
Un altro modo per gestire elenchi di archivi lunghi è visualizzare una struttura espandibile degli anni e dei mesi in cui hai pubblicato post sul blog.
Per fare ciò, devi installare e attivare il plugin Collapsing Archives.
Una volta che il plugin è attivo, devi visitare la pagina Aspetto » Widget e aggiungere il widget 'Archivi espandibili' alla tua barra laterale.

Nella barra laterale delle impostazioni del blocco, puoi scegliere di mostrare il numero di post pubblicati nell'anno o nel mese, espandere automaticamente i menu comprimibili, cambiare le icone dei menu comprimibili e altro ancora.
Puoi saperne di più facendo riferimento al Metodo 1 nella nostra guida su come limitare il numero di mesi d'archivio visualizzati in WordPress.

Una volta che sei soddisfatto di come vengono visualizzati gli archivi, fai clic su 'Aggiorna' o 'Salva'.
Ecco come appare sul nostro sito demo:

Opzione 4: Limita il numero di mesi di archivi visualizzati
Forse ti piace l'aspetto degli archivi predefiniti di WordPress. Ma se hai tonnellate di contenuti, mostrare ogni mese o anno può rendere la tua barra laterale troppo lunga. Puoi risolvere questo problema limitando il numero di mesi che appaiono nel tuo elenco di archivi.
Per fare ciò, dovrai aggiungere codice personalizzato ai file del tuo tema WordPress.
Se non l'hai mai fatto prima, questo potrebbe sembrare intimidatorio. Ma non preoccuparti, poiché puoi usare WPCode per farlo in modo sicuro.
WPCode è un plugin per snippet di codice che rende facile aggiungere e gestire snippet di codice personalizzato in WordPress.
L'abbiamo testato a fondo e l'abbiamo trovato ottimo per rimanere organizzati: puoi vedere chiaramente quali snippet hai aggiunto e disattivare rapidamente qualsiasi codice che non funziona, tutto senza modificare i file del tuo tema.
Per maggiori informazioni sulla nostra esperienza, consulta la nostra recensione di WPCode.
Per prima cosa, installiamo WPCode nella bacheca di amministrazione di WordPress. Puoi consultare la nostra guida passo passo su come installare un plugin di WordPress se hai bisogno di una guida.
Nota: Puoi usare la versione gratuita di WPCode per questo tutorial. Detto questo, la versione premium offre molti vantaggi, come un generatore di codice AI per aiutarti a creare snippet di codice personalizzati senza conoscenze tecniche.
Quindi, vai su Snippet di codice » + Aggiungi snippet. Seleziona ‘Aggiungi il tuo codice personalizzato (Nuovo snippet)’ e fai clic sul pulsante ‘+ Aggiungi codice personalizzato’.

Ora, dai un nome al tuo nuovo snippet di codice. Può essere qualcosa di semplice come ‘Limita mesi di archivio visualizzati’.
Quindi, assicurati di selezionare ‘Snippet PHP’ per il ‘Tipo di codice’.

Incolla il seguente snippet di codice qui sotto nella casella di anteprima del codice:
// Function to get archives list with limited months
function wpb_limit_archives() {
$archive_title = '<h3>Archives</h3>';
$my_archives = $archive_title . wp_get_archives(array(
'type'=>'monthly',
'limit'=>6,
'echo'=>0
));
return $my_archives;
}
// Create a shortcode
add_shortcode('wpb_custom_archives', 'wpb_limit_archives');
// Enable shortcode execution in text widget
add_filter('widget_text', 'do_shortcode');
La parte che dice 'limit'=>6 controlla il numero di mesi visualizzati. Puoi cambiarlo in qualsiasi numero se preferisci.
Ora, scorri verso il basso fino alla sezione Inserimento e assicurati che il metodo di Inserimento sia ‘Inserimento automatico’. Seleziona anche ‘Solo frontend’ per la Posizione.
Dopo averlo fatto, fai semplicemente clic sull'interruttore in alto per rendere il codice ‘Attivo’ e premi il pulsante ‘Salva snippet’.

Una volta terminato, vai al tuo editor di widget basato su blocchi o all'editor del sito completo.
Quindi, fai clic sul pulsante ‘+’ e seleziona il blocco ‘Shortcode’.

Dopodiché, dovresti incollare il seguente shortcode nel blocco:
[wpb_custom_archives]
Una volta fatto clic sul pulsante ‘Aggiorna’ o ‘Salva’, la tua barra laterale visualizzerà solo 6 mesi di archivi.

Per ulteriori dettagli, consulta il Metodo 3 nella nostra guida su come limitare il numero di mesi di archivio visualizzati in WordPress.
Ecco come appare la nostra sezione archivi dopo aver sostituito il blocco Archivi predefinito con lo shortcode:

Opzione 5: Visualizza menu a discesa per archivi mensili e annuali
A volte, i visitatori potrebbero non sapere esattamente quando un post è stato aggiornato o pubblicato. Per aiutarli, puoi creare due menu a discesa nella tua sezione archivi: uno per gli anni e uno per i mesi.
Questo elemento di design di WordPress può rendere più facile per gli utenti trovare contenuti più vecchi senza dover scorrere un lungo elenco.
Utilizzeremo uno snippet di codice personalizzato e WPCode per questo. Come prima, assicurati di installare WPCode nella tua bacheca di WordPress.
Quindi, vai su Snippet di codice » + Aggiungi snippet. Scegli ‘Aggiungi il tuo codice personalizzato (Nuovo snippet)’ e fai clic sul pulsante ‘+ Aggiungi codice personalizzato’.
Ora, dai un nome al tuo nuovo snippet di codice personalizzato. Può essere qualcosa di semplice come ‘Menu a discesa archivi mensili e annuali’.
Inoltre, seleziona ‘Snippet PHP’ per il ‘Tipo di codice’.

Nella casella Anteprima codice, inserisci semplicemente il seguente snippet di codice:
function custom_archive_dropdown_shortcode() {
// Get months array
global $wpdb, $wp_locale;
$months = $wpdb->get_results(
"SELECT DISTINCT YEAR(post_date) AS year, MONTH(post_date) AS month
FROM $wpdb->posts
WHERE post_type = 'post' AND post_status = 'publish'
ORDER BY post_date DESC"
);
$output = '<h3>Archives</h3>'; // Added 'Archives' title in H3
$month_dropdown = '<select id="archive-month" name="archive-month" onchange="document.location.href=this.options[this.selectedIndex].value;">';
$month_dropdown .= '<option value="">Select Month</option>';
foreach ( $months as $month ) {
$month_name = $wp_locale->get_month($month->month);
$year_month = sprintf('%d-%02d', $month->year, $month->month);
$month_dropdown .= sprintf(
'<option value="%s">%s %d</option>',
esc_url(home_url('/' . $month->year . '/' . $month->month . '/')),
$month_name,
$month->year
);
}
$month_dropdown .= '</select>';
// Get years array
$years = $wpdb->get_results(
"SELECT DISTINCT YEAR(post_date) AS year
FROM $wpdb->posts
WHERE post_type = 'post' AND post_status = 'publish'
ORDER BY post_date DESC"
);
$year_dropdown = '<select id="archive-year" name="archive-year" onchange="document.location.href=this.options[this.selectedIndex].value;">';
$year_dropdown .= '<option value="">Select Year</option>';
foreach ( $years as $year ) {
$year_dropdown .= sprintf(
'<option value="%s">%d</option>',
esc_url(home_url('/' . $year->year . '/')),
$year->year
);
}
$year_dropdown .= '</select>';
$output .= $month_dropdown . $year_dropdown; // Append dropdowns to output
return $output; // Return the complete output
}
add_shortcode('archive_dropdown', 'custom_archive_dropdown_shortcode');
Come con lo snippet di codice precedente, scorri verso il basso fino alla sezione Inserimento e seleziona ‘Inserimento automatico’ per il Metodo di inserimento. Per quanto riguarda la Posizione, puoi scegliere ‘Solo frontend’.
Quindi, semplicemente rendi attivo lo snippet di codice e fai clic su ‘Salva snippet’.

Ora, vai all'editor di widget basato su blocchi o all'editor completo del sito.
Dopodiché, aggiungi un blocco ‘Shortcode’ alla tua barra laterale. A questo punto, puoi procedere e incollare il seguente shortcode nel blocco shortcode:
[archive_dropdown]
Una volta fatto ciò, fai semplicemente clic su ‘Aggiorna’ o ‘Salva’.

Ora, ci saranno 2 menu a discesa che consentiranno agli utenti di scegliere il mese e l'anno per trovare i contenuti giusti.
Ogni volta che selezionano un mese o un anno, l'utente verrà reindirizzato alla pagina dell'archivio del periodo scelto.

Opzione 6: Visualizza archivi mensili organizzati per anno
Una volta, abbiamo dovuto lavorare al design di un sito che necessitava di archivi mensili organizzati per anno nella barra laterale.
Questo archivio personalizzato nella barra laterale era difficile da codificare perché questo cliente voleva mostrare l'anno solo una volta a sinistra.

Fortunatamente, siamo stati in grado di trovare ispirazione dal web e abbiamo creato uno snippet di codice personalizzato per esso. Per questo articolo, abbiamo ideato una versione molto più semplice di quel codice che puoi anche utilizzare con WPCode.
Innanzitutto, installa WPCode nella tua bacheca di WordPress. Dopodiché, vai su Code Snippets » + Add Snippet. Scegli ‘Add Your Custom Code (New Snippet)’ e fai clic sul pulsante ‘+ Add Custom Code’.
Dai un nome al tuo nuovo snippet di codice personalizzato. Può essere qualcosa di semplice come ‘Custom Archives’.
Inoltre, seleziona ‘Snippet PHP’ per il ‘Tipo di codice’.

Nella casella Anteprima codice, inserisci semplicemente il seguente snippet di codice:
add_shortcode( 'custom_archives', 'display_custom_archives' );
function display_custom_archives() {
$archives = wp_get_archives( array(
'type' => 'monthly',
'format' => 'custom',
'before' => '',
'after' => '<hr>',
'echo' => false,
) );
// Split the archives by year
$archives_by_year = array();
foreach ( explode( '<hr>', $archives ) as $archive_item ) {
if ( empty( $archive_item ) ) {
continue;
}
// Extract year from the archive link
preg_match( '/\/(\d{4})\//', $archive_item, $matches );
$year = isset( $matches[1] ) ? $matches[1] : date( 'Y' );
// Add to the year array
$archives_by_year[ $year ][] = $archive_item;
}
// Build the output
$output = '<h2 class="archives-title">Archives</h2>';
$output .= '<hr>';
$output .= '<table>';
foreach ( $archives_by_year as $year => $archives_for_year ) {
$output .= '<tr>';
$output .= '<td class="year">' . $year . '</td>';
$output .= '<td class="months">';
$output .= implode( '', $archives_for_year );
$output .= '</td>';
$output .= '</tr>';
}
$output .= '</table>';
return $output;
}
Come mostrato nel Metodo 5, ora puoi scorrere verso il basso fino alla sezione Inserimento e selezionare 'Inserimento automatico' per Metodo di inserimento. Puoi scegliere 'Solo frontend' per Posizione.
Ora, rendi attivo lo snippet di codice e fai clic su 'Salva snippet'.

Creiamo di nuovo un nuovo snippet di codice personalizzato. Questa volta, lo snippet di codice serve a stilizzare l'area del widget degli archivi usando CSS.
Puoi chiamare questo snippet di codice 'CSS personalizzato per archivi' e selezionare 'Snippet CSS' per Tipo di codice.

Ora, incolla il seguente snippet di codice nella casella Anteprima codice:
.archives-title {
/* Style the title */
}
table {
width: 100%;
border-collapse: collapse;
}
td {
padding: 5px;
vertical-align: top;
}
.year {
font-weight: bold;
}
.months hr {
margin: 5px 0;
border: none;
border-top: 1px solid #ccc;
}
Una volta fatto, scorri verso il basso fino alla sezione Inserimento e seleziona 'Inserimento automatico' per Metodo di inserimento. Quindi, scegli 'Intestazione sito' per Posizione.
Dopo di che, rendi attivo il codice e fai clic su ‘Salva snippet.’

Andiamo all'editor dei widget o all'editor del sito completo.
Qui, fai clic sul pulsante '+' e seleziona il blocco 'Shortcode'. Ora, procedi e incolla il seguente shortcode nel blocco shortcode:
[custom_archives]
Quindi, fai clic su 'Aggiorna' o 'Salva'.

Ecco fatto!
Questo è l'aspetto della visualizzazione dei nostri archivi sul nostro sito demo:

Scopri altri suggerimenti e trucchi per blog WordPress
Vuoi migliorare ulteriormente i tuoi archivi del blog WordPress? O magari ridisegnare la tua barra laterale? Dai un'occhiata a queste guide correlate qui sotto:
- Come aggiungere una barra laterale, un'intestazione o un piè di pagina personalizzati per ogni categoria
- Come Creare una Pagina Archivio per Tipi di Post Personalizzati in WordPress
- Guida per principianti alla creazione di una pagina di archivi personalizzata in WordPress
- Come cambiare la posizione della sidebar in WordPress
- Trucchi per la barra laterale di WordPress per ottenere i massimi risultati
- Come aggiungere un'immagine nel widget della barra laterale di WordPress
Speriamo che questo tutorial ti abbia aiutato a imparare come personalizzare la visualizzazione degli archivi di WordPress nella tua barra laterale. Potresti anche voler consultare la nostra guida definitiva su come modificare un sito web WordPress e le nostre scelte esperte dei migliori page builder drag-and-drop per WordPress.
Se ti è piaciuto questo articolo, iscriviti al nostro canale YouTube per tutorial video su WordPress. Puoi anche trovarci su Twitter e Facebook.

Serena
Ciao. Grazie per il codice, funziona! Ho usato l'opzione 5 (archivio in un campo a discesa). Nel mio codice uso solo l'anno e non il mese.
Il menu a discesa è stato inserito nel template della pagina archivio per anno in modo da poter saltare da un anno all'altro. Tuttavia, vorrei sapere come fare in modo che il menu a discesa abbia già l'anno selezionato. Mi spiego. Se sto guardando l'archivio del 2023, il menu a discesa dovrebbe già avere l'anno 2023 selezionato o avere un placeholder con l'anno dell'archivio che sto visualizzando.
Sarebbe possibile?
Grazie
Supporto WPBeginner
At the moment the code would not do that but we will look into the possibility for the future
Amministratore
Jiří Vaněk
Mi piace molto l'opzione di visualizzare gli archivi in un menu comprimibile. Ho il mio sito web da tre anni e ora contiene 1.300 articoli. Stavo cercando una soluzione che non finisse per occupare metà della barra laterale. Con così tanti articoli, la visualizzazione degli archivi sarebbe scomodamente grande e poco attraente. Tuttavia, il menu a discesa ha risolto perfettamente questo problema, rendendo gli archivi meravigliosamente compatti. Questa funzionalità mi ha davvero aiutato perché altrimenti probabilmente non avrei incluso gli archivi nel menu.
AD
C'è un modo, o un widget di qualche tipo, sotto la barra laterale Archivi per avere i post del blog per titolo visualizzati sotto il mese corrispondente; invece di avere solo il mese presente che clicca su una nuova pagina che visualizza tutti i post di quel mese per intero?
Mi scuso se questa domanda è già stata risposta nei commenti. Non ho avuto modo di leggerli.
Grazie per qualsiasi aiuto o indicazione che potrai fornirmi per la mia domanda!
Supporto WPBeginner
Salve,
Si prega di consultare il nostro articolo su come limitare gli archivi in WordPress.
Amministratore
Jaswinder
Grazie mille per il codice. Mi ha salvato la vita.
Carla Izumi Bamford
Grazie per questo post, molto utile.
Margaret
Questo è stato estremamente utile! Grazie mille. Ha fatto esattamente quello di cui avevo bisogno.
Thomas
Ciao WPBEGINNER,
Spero che tu dia ancora un'occhiata a questo post più vecchio. Innanzitutto, grazie mille per questo fantastico tutorial e codice.
Sono riuscito a ottenere
Anno
Gennaio (2)
Febbraio (5)
…
…
Ma non sono riuscito a contare i post per anno. Come posso farlo, in modo che la voce dell'anno mostri un numero per tutti i post di un anno
anno (28) …
Grazie mille per il tuo aiuto!
Cordiali saluti,
Thomas
Erik
Thanks so much for this code!
it is helping me a lot.
C'è qualche possibilità di estendere questo a una categoria specifica? per ID categoria?
Jason Wofford
Il codice funziona perfettamente, ma come posso aggiungere i giorni a ciascuno dei mesi?
Tony Lewis
did not work for me seems to be missing some css
Xavier
Questo codice non funziona più per nessun altro là fuori??
James
Non funziona affatto!!!
il risultato non ha nulla a che fare con l'esempio.
Strano che alcuni ragazzi l'abbiano trovato utile e fantastico.
Qual è il problema?
Eldad
Volevo solo ringraziare
Xavier Bonet
Ciao! Prima cosa: ottimo codice! Funziona perfettamente! Grazie!
Mi stavo chiedendo se ci fosse un modo per modificare il codice in modo da permettere, diciamo, all'intervallo di 18 mesi di spostarsi su o giù in base a ciò che si sta visualizzando? Così com'è, si può accedere solo agli ultimi 18 mesi. Ma forse ci sarebbe un modo per farlo in modo che quando si apre, ad esempio, il mese 18 della lista, e si apre la nuova pagina, la lista dell'archivio generata dal codice sopra imposti il mese 18 come centro di un nuovo array che mostra, diciamo, 9 mesi prima e 7 dopo (o viceversa).
Forse la mia spiegazione non è molto chiara. Ho avuto l'idea guardando questo sito web qui: http://marthabeck.com/. Se scorri verso il basso fino al menu in fondo vedrai che ci sono diversi anni disponibili ma vengono visualizzati solo i mesi per l'anno corrente. Quando si apre un nuovo anno, vengono visualizzati i mesi per quell'anno. Naturalmente, questo è probabilmente un codice completamente diverso, ma almeno funziona come esempio visivo di ciò di cui sto parlando.
Supporto WPBeginner
Prova a crearlo con tag condizionali nei modelli di archivi basati sulla data:
Guarda il codex per is_archive single_month_title
Amministratore
tobias
Non il ciclo foreach(), la query MySQL dovrebbe avere un limite!
Jessica
C'è un modo per avere l'archivio giornaliero o addirittura settimanale invece che solo mensile?
Staff editoriale
Puoi usare il widget del calendario in WordPress.
Amministratore
JP Lew
Uso un calendario, ma oltre a quello ho modificato il codice per visualizzare anche archivi giornalieri, ha funzionato benissimo. Ecco la query:
$days = $wpdb->get_results("SELECT DISTINCT DAY( post_date ) AS day , MONTH( post_date ) AS month , YEAR( post_date ) AS year, COUNT( id ) as post_count FROM $wpdb->posts WHERE post_status = 'publish' and post_date <= now( ) and post_type = 'lecture' GROUP BY day , month , year ORDER BY post_date ASC");
<a href="/anno; ?>/mese, 1, $giorno->anno)) ?>/mese, $giorno->giorno, $giorno->anno)) ?>”>mese, $giorno->giorno, $giorno->anno)) . “, ” . date_i18n(“F”, mktime(0, 0, 0, $giorno->mese, 1, $giorno->anno)) . ” ” . date(“j”, mktime(0, 0, 0, $giorno->mese, $giorno->giorno, $giorno->anno)) . “, ” . $anno_richiesto ?>conteggio_post . “)”; ?>
//output: Giovedì, Agosto 22, 2013 (12)
Grazie per il post comunque, era esattamente quello che stavo cercando. Anche le prestazioni sono sorprendentemente buone.
JP Lew
ok, your comment system stripped out all my `php` tags essentially rendering that code useless. Anyways, it’s possible and easy, you’ll figure it out.
Roelof
Salve,
Mi piace questa idea. Si può adattare anche in modo che solo gli articoli di una categoria specifica siano negli archivi e le altre categorie no?
Roelof Wobben
Asher Charles
Ottimo piccolo pezzo di codice, stavo cercando un modo per visualizzare meglio gli archivi. Saluti
Carla
Ho cercato ovunque un tutorial su come personalizzare la mia pagina degli archivi. Sono riuscito a far produrre alla mia pagina un elenco di titoli di post e date di post, che è un ottimo inizio. E ora devo capire come raggrupparli per mese, in modo che la pagina assomigli a questa:
2013
Maggio
Questo è un titolo di post
28 Maggio 2013
E un altro post
20 Maggio 2013
Non sono sicuro di come fare. Avresti qualche suggerimento? Ho notato nel forum di Wordpress e altrove che molte persone vogliono che i loro archivi abbiano questo aspetto, ma loro (come me) non hanno ricevuto alcun aiuto.
Grazie!
Núria
Grazie per questo frammento di codice, è stato molto utile. Voglio solo aggiungere una piccola modifica che renderà l'output della stringa del mese nella lingua locale.
Alla riga 16 puoi sostituire la funzione date() con la funzione date_i18n()
– echo date("F", mktime(0, 0, 0, $month->month, 1, $month->year))
– echo date_i18n("F", mktime(0, 0, 0, $month->month, 1, $month->year))
Pertanto, la funzione restituirà per il mese di marzo la stringa "March" in inglese, "Marzo" in spagnolo o "Març" in catalano, solo per fare alcuni esempi, in base alla lingua del sito.
Staff editoriale
Grazie per questo suggerimento. Codice aggiornato.
Amministratore
Matt
Il tema che sto usando ha un widget per le barre laterali. Il file php è scritto in shortcode. Come potrei convertirlo in uno shortcode da inserire nel file? Grazie.
Staff editoriale
Prendi il primo snippet e convertilo in una funzione. Poi usa questo articolo per creare uno shortcode:
https://www.wpbeginner.com/wp-tutorials/how-to-add-a-shortcode-in-wordpress/
Amministratore
Ryan
Ciao,
Mi sono imbattuto in questo, proprio quello che cercavo. Ma ha un piccolo problema, ho gli ultimi due mesi di post, ottobre e novembre, che vengono visualizzati nella barra laterale, ho appena aggiunto uno nuovo a dicembre e non viene visualizzato dicembre nell'elenco degli archivi.
Strano perché non mostra il mese corrente
Staff editoriale
È davvero strano. Abbiamo questo funzionante correttamente sul sito di un cliente.
Amministratore
thao_
È possibile mostrare il conteggio totale dei post degli anni, così come il conteggio dei post per ogni mese? Quindi avresti ancora il conteggio dei post di ogni mese accanto a ogni mese, ma anche il totale per l'anno accanto all'anno. Usando la tua immagine di archivio come esempio, avresti 2010 (20) e poi i mesi come attualmente visualizzati.
Staff editoriale
Sì, puoi aggiungere i conteggi di tutti i mesi di un anno e visualizzarli se vuoi.
Amministratore
craig coffman
I think I got it sorted. I moved the “break;” up into the code before it spits out the monthly … . I figured it out after looking at Appleton’s site. His code is slightly different, as you noted. I find it interesting how people can change a single bit of code and the effect is wildly different from such a small edit. To borrow from WP, “Code is Poetry”
Ho apportato una modifica che volevo portare alla tua attenzione. Il codice sopra non sembrava mostrare il mese più recente. Cioè, il mio mese di agosto di quest'anno non appariva (dato che siamo ora in agosto) ma luglio appariva benissimo. Ho modificato l'istruzione SQL e ora appare. Non sono sicuro che tu voglia il mese corrente, ma se questo è un archivio, forse anche il mese corrente è archiviato.
Ecco la mia modifica:
post_date YEAR(CURDATE())
Sembra che questo recuperi il mese in cui ci troviamo attualmente. Non sono un maestro di SQL, quindi forse c'è un motivo per non farlo o anche un modo migliore. Tuttavia, sta funzionando per me.
Grazie per il tuo tempo su questo tutorial. Mi ha sicuramente salvato dal continuare a sbattere la testa contro un muro tentando di manipolare wp_get_archives().
craig coffman
hmm… sembra che del codice sia stato rimosso. Ci dovrebbe essere il simbolo Maggiore di, tra “post_date” e “YEAR(CURDATE())”. Provo di nuovo e spero che funzioni.
post_date > YEAR(CURDATE())
Sorry for the additional post, but a ‘tweak’ doesn’t change anything if the proper code does not display
Ryan
Ciao Craig,
Non sono sicuro dove mettere
post_date > YEAR(CURDATE())
Grazie
craig coffman
Ryan –
Strano. Ho pubblicato una risposta sul sito Float Left ma non sembra esserci. Ecco il file da scaricare, che mostra dove si trova il codice:
http://www.octoberland.com/fileChute/displayCurrentMonth.zip
Ho inserito il codice nel file index.php del mio template. È lì perché il cliente voleva che fosse presente su ogni pagina. Recupera solo i mesi dell'anno corrente. Cioè, se tornassi al 2011, i mesi visualizzati sarebbero comunque quelli del 2012.
Ho aggiunto il mio codice nella riga ‘WHERE’ di MySQL, sostituendo il codice che Andy aveva lì.
Inoltre, ho anche la funzione standard di archivio di WP perché il mio cliente voleva visualizzare anche un archivio annuale. Questo non è necessario per visualizzare il mese corrente.
Spero che questo aiuti.
– Craig
Ryan
Grazie Craig, sembra che abbia risolto il problema.
craig coffman
Ryan –
Happy it worked for you. It took me several hours (I am not a MySQL developer) to figure that out. Now that it is helped someone else, it was worth the effort
– Craig
Mary
come visualizzare i giorni?
Staff editoriale
Vuoi visualizzare tutti i 30 giorni per tutti i mesi? O vuoi solo visualizzare i giorni? Potresti fare meglio usando il widget calendario integrato.
Amministratore
Akshat Goel
Great post!! Saved my day!
zuzanka
Ciao, sto usando solo il widget, non un plugin aggiuntivo per l'archivio. Ho limitato il numero di mesi, ad esempio 2, ma mi aspetto di avere 2 mesi e poi il resto sotto "..." o "archivio". Non riesco a trovare il modo di mostrare il resto. C'è qualcuno che conosce questo problema? Grazie mille.
wpbeginner
@sgclark That sounds good. Will have to test out his plugin and then add it in this article
sgclark
@wpbeginner I mesi non utilizzati sono racchiusi nella loro classe CSS unica, quindi puoi semplicemente fare un "display:none" CSS per i mesi non utilizzati. Poi, quando appare un post nel mese, passa a una classe diversa (tramite PHP)
wpbeginner
@sgclark Quel plugin sembra buono... Mi chiedo come funzionerebbe se non volessimo mostrare affatto i mesi non utilizzati. Ma nonostante ciò, non l'ho ancora provato perché non è ospitato nel repository...
sgclark
Justin Blanton ha creato un bel plugin per Wordpress chiamato SmartArchives. Sono sicuro che potresti anche scavare nel suo file CSS per giocare con la visualizzazione e non devi preoccuparti di tutto il codice aggiuntivo nella pagina PHP della Sidebar. – http://hypertext.net/projects/smartarchives