ATTENZIONE!

Questo articolo è stato scritto nel 2016, le informazioni riportate potrebbero essere incomplete o non aggiornate. Per qualsiasi dubbio o chiarimento lascia un commento in fondo all'articolo.

Simple Alert for Old Post: Avviso per Vecchi Articoli su WordPress

 In Plugin

Quando si ha un blog tecnico, che parla di argomenti specifici, il tempo può cambiare molti degli aspetti e degli argomenti trattati in vecchi post rendendoli obsoleti e inutili per i visitatori.

Se si pubblica con costanza potrebbero essere presenti centinaia di articoli e pensare di tenerli tutti aggiornati, per quanto ci si possa sforzare, diventa impossibile. È però possibile utilizzare un semplicissimo plugin per creare un avviso subito sotto il titolo del post e notificare al lettore che l’articolo è datato e potrebbe riportare informazioni non più affidabili.

Vedremo poi come intervenire direttamente sul tema per chi vuole mettere le mani direttamente sul codice.

Il Plugin

Il plugin che andremo a utilizzare è Simple Alert for Old Post e risolve il problema in pochissimi minuti.

Una volta installato il plugin e attivato potremmo andare a configurarlo seguendo il percorso Impostazioni -> Alert Settings.

La pagina di configurazione è estremamente essenziale e le opzioni sono poche ma il risultato è estremamente efficace.

  • Date Settings: possiamo selezionare tra giorni, mesi e anni e inserirne il numero. L’avviso apparirà nel post dopo il periodo selezionato. Questa opzione è estremamente utile, in base agli argomenti trattati potrebbe infatti essere più appropriata una diversa scala temporale prima di considerarli “vecchi”.
  • Theme: da qui possiamo selezionare il colore di sfondo del messaggio tra le 4 possibili opzioni. Le opzioni sono poche ma possiamo adattarlo meglio al tema intervenendo sul CSS se necessario dal menù di WordPress seguendo il percorso Aspetto -> Modifica CSS e inserendo il seguente codice e sostituendo alle scritte in verde i codici desiderati rispettivamente per il colore di sfondo e del bordo del box di avviso

.simple-old-alert .alert-default {

background: codice colore sfondo del box;
border-color: codice colore bordo del box;

}

  • Icon Type: possiamo decidere se utilizzare l’icona delle informazioni o quella di avviso. Anche in questo caso il plugin è piuttosto limitato ma possibile intervenire in maniera molto semplice aggiungendo la propria icona tramite CSS usando il seguente codice e sostituendo la parte in verde con la URL della vostra icona

.simple-old-alert:not(.alert-caution):before, .simple-old-alert:not(.alert-info):before {
background-image: url(URL immagine da caricare);
}

  • Text: qui andramo ad inserire il testo del messaggio che vorremo far apparire dentro al box informativo.
  • Preview: potremmo avere una breve anteprima di come apparirà il n ostro box in base alle selezioni effettuate nella pagina (ma non quelle dovute alla modifica dei CSS).
  • Targets: possiamo decidere se attivare il box informativo solo per i post o anche per le pagine in base all’esigenza del portale.

Una volta impostato il tutto e salvate le modifiche il box apparirà sotto al titolo del post in base alle impostazioni scelte.

Intervenire sul Tema

Esiste un’alternativa all’utilizzo di questo plugin, sicuramente molto più customizzabile in tutti i suoi aspetti ma che richiede un minimo di conoscenza della struttura del tema e degli interventi sul codice HTML, PHP e CSS.

Come pro avremo un plugin in meno sul sito, rendendo il codice più pulito e la potenzialità di gestire ogni minimo dettaglio dell’aspetto del box informativo e del suo posizionamento nella pagina.

Iniziamo subito analizzando il codice che dovremo inserire in single.php che possiamo modificare direttamente da Aspetto -> Editor o tramite ftp.

<?php
if ((date(‘U’) – get_the_time(‘U’)) >= 31557600) { ?>
<div class=”avviso-post-vecchio”>
<h1>Attenzione!</h1>
<p>Questo articolo è stato scritto nel <strong><?php the_time(‘Y’); ?></strong>, le informazioni riportate potrebbero essere vecchie. Per qualsiasi dubbio o chiarimento lascia un commento in fondo alla pagina.</p>
</div>
<?php }?>

Dovremmo quindi scegliere la posizione giusta nella struttura di single.php per decidere in che punto della pagina visualizzare l’avviso.

Vediamo come lavora questo codice:

  • date(‘U’) è la data attuale in secondi a partire dal 1° Gennaio 1970 secondo il riferimento Unix.
  • get_the_time(‘U’) è la data di pubblicazione dell’articolo in secondi usando lo stesso riferimento.
  • 31557600 è la durata in secondi di un anno calcolata in 365 giorni e 6 ore per coprire gli anni bisestili.
  • the_time(‘Y’); è l’anno di pubblicazione dell’articolo

Il nostro codice calcola quindi la data attuale in secondi e ci sottrae quella della pubblicazione rendendo visibile il codice HTML presente tra le parentesi graffe solo se il risultato è maggiore o uguale alla durata di un anno.

L’HTML è un semplice div contenente un titolo e un messaggio d’avviso con un richiamo in PHP per visualizzare l’anno di pubblicazione dell’articolo.

Possiamo quindi modificare tutto quello che ho evidenziato in verde nel codice. Possiamo aver bisogno di visualizzare il messaggio dopo un tot di giorni o di mesi, basta fare attenzione ai calcoli in secondi. Ovviamente possiamo modificare il testo dell’avviso a piacimento.

In rosso ho evidenziato l’apertura e la chiusura del PHP, se il codice viene inserito in un punto che è scritto in PHP potrebbe essere necessario cancellare questa porzione di testo.

Inserendo questo codice abbiamo un vantaggio non trascurabile, possiamo infatti decidere di visualizzare l’avviso solo per una determinata categoria di articoli, basta aggiungere una semplice istruzione a quanto sopra riportato per ottenere il risultato voluto.

<?php
if ((date(‘U’) – get_the_time(‘U’)) >= 31557600 && in_category(‘ID categoria‘)) { ?>
<div class=”avviso-post-vecchio”>
<h1>Attenzione!</h1>
<p>Questo articolo è stato pubblicato nel <strong><?php the_time(‘Y’); ?></strong>, le informazioni contenute potrebbero quindi non essere aggiornate.<br />
Se avete dubbi lasciate un commento in fondo all’articolo.</p>
</div>
<?php } ?>

Basterà infatti inserire l’ID categoria tra gli apici per far apparire il messaggio solo nella categoria desiderata (vedi l’articolo ID Categoria su WordPress per scoprire come trovarlo).

Quello che dobbiamo ancora fare è però settare lo stile grafico del messaggio e per farlo dobbiamo intervenire su style.css o direttamente da WordPress seguendo il percorso Aspetto -> Modifica CSS inserendo il seguente codice

.avviso-post-vecchio{
border-top:2px solid #737379;
border-bottom:2px solid #737379;
background-color:#f1f2f3;
padding: 10px 20px 10px 10px;
}

Questo ovviamente è solo un esempio di CSS molto semplice, per chi è più pratico la possibilità di personalizzazione è pressochè infinita.

Per utilizzare questa seconda opzione consiglio però vivamente di utilizzare un Tema Figlio per evitare di perdere il lavoro a ogni aggiornamento del tema.

Scegliendo di posizionare l’avviso in cima alla pagina e con le opportune modifiche al CSS questo è l’avviso presente sugli articoli del mio sito

Quando si devono gestire portali di grandi dimensioni e la quantità di articoli è troppo elevata per poter garantire un aggiornamento costante di tutti i contenuti questa è una soluzione elegante ed estremamente utile per gli utenti.

Davide Gavazzi
Davide Gavazzi, appassionato di SEO, SEM, Social Media Marketing e Web Design. Si occupa di Web dal 2011 creando e gestendo siti, Social, Pubblicità e tutto ciò che riguarda l'Online.
Recommended Posts

Lascia un commento

Contattami

Hai domande? Puoi scrivermi utilizzando il form seguente e sarai ricontattato il prima possibile.

Non leggibile? Cambia testo.

Start typing and press Enter to search