Aggiornare a WordPress 2.3 (e vivere felici)

Giovedì ho aggiornato Fucinaweb all’ultima versione di WordPress, la 2.3. L’operazione mi ha richiesto circa 15 minuti. E’ poco ma, come si suol dire, “mi sono preso in anticipo” e nelle scorse settimane ho provato alcune beta e candidate release prima dell’aggiornamento definitivo.

Riporto qui qualche suggerimento che spero possa tornare utile a chi è indeciso sul da farsi e desideri qualche indicazione per poter pianificare la migrazione con animo sereno. Prima di procedere può essere di aiuto un’introduzione ai cambiamenti introdotti in WordPress 2.3, di cui ho scritto in Uno sguardo a WordPress 2.3.

Un buon backup

Introduzione d’obbligo: il database di WordPress 2.3 non è compatibile con le versioni precedenti. Detto in altre parole, se aggiornate a WordPress 2.3 non potete più tornare indietro: siete su un percorso a senso unico. Questa operazione dovrebbe essere l’ultima cosa che fate prima di sovrascrivere i file della versione precedente.

Uno sguardo ai plugin

La migrazione a WordPress 2.3 procederà con tutta probabilità nel migliore dei modi se la vostra installazione di WordPress non è “farcita” di plugin. In caso contrario, soprattutto se fate uso plugin che cambiano radicalmente il comportamento di WordPress o delle categorie, dovrete come minimo aggiornarli alle versioni più recenti. Come dicevo in Compatibilità plugin e WordPress 2.3 esiste una pagina del codex di WordPress che si preoccupa di elencare le compatibilità dei plugin. Se comunque siete in questa situazione mi permetto di consigliarvi, per evitare brutte sorprese, un’installazione di prova di WordPress 2.3. Non ve ne pentirete. Istruzioni sul come procedere le trovate in testa all’intervento Uno sguardo a WordPress 2.3. Ricordatevi di disabilitare tutti i plugin prima di sovrascrivere la vostra installazione (questa è la penultima operazione da fare, prima del backup del database).

I plugin che uso senza problemi nell’installazione di WordPress 2.3 di Fucinaweb sono:

Il tema WordPress: anticipate i cambiamenti

Quando sono migrato a WordPress 2.3 non ho cambiato di una virgola il tema, neppure dopo aver importato i tag di Ultimate Tag Warrior (UTW) nella nuova tassonomia di WordPress. Eppure l’inclusione dei tag nativi di WordPress richiede nei template una funzione diversa (the_tags), rispetto a quella di UTW (UTW_ShowTagsForCurrentPost).

L’aveto già fatto in precedenza. Ho infatti modificato il template così che venga controllata la presenza della funzione the_tags (indice che è installata la versione 2.3 di WordPress), piuttosto che la presenza della funzione relativa a UTW.

Il codice che ne è uscito è questo:

<div class="tags">

  <?php if (function_exists('the_tags')): ?>

    <?php the_tags('Tag: ', ', ', '');?>

  <?php elseif (function_exists('UTW_ShowTagsForCurrentPost')) : ?>

    <?php echo "Tag: " ; UTW_ShowTagsForCurrentPost("commalist");?>

  <?php endif;?>

</div>

Con questo semplice accorgimento il template di Fucinaweb è in grado di funzionare sia con WordPress 2.2 e UTW, sia con WordPress 2.3. Anche se non usate UTW, vi sarà quasi sicuramente sufficiente apportare una piccola modifica al codice per adattarlo alle vostre esigenze.

Se disponete di una pagina dedicata per i tag (per esempio tag.php), e volete visualizzare in testa all’elenco degli interventi una scritta del tipo “Risultati per tag nome_tag“, il codice sarà simile al precedente:

<div class="archive">Risultati per tag

  <?php if (function_exists('single_tag_title')): ?>

    <?php single_tag_title(); ?>

  <?php elseif (function_exists('UTW_ShowCurrentTagSet')) : ?>

    <?php UTW_ShowCurrentTagSet("tagsetsimplelist");?>

  <?php endif;?>

</div>

Tenete presente che le modifiche hanno senso se UTW non è configurato per inserire automaticamente in fondo ai vostri interventi l’elenco dei tag. Dovete averne la completa gestione.

La maschera dei widget in wordpress 2.3La versione 2.3 di WordPress integra anche una tagcloud – l’elenco dei tag in dimensioni crescenti a seconda della loro frequenza. Se il vostro tema utilizza i widget potete trascinare l’elemento nella spalla del vostro template come se fosse uno qualsiasi degli elementi già previsti da WordPress (testo, elenco delle categorie, commenti, ecc.).

Il codice prodotto da questo elemento, quello su cui con tutta probabilità dovrete intervenire personalizzando i fogli di stile, è simile a:

<li id="tag_cloud" class="widget widget_tag_cloud">

  <h2 class="widgettitle">Tag Cloud</h2>

  <a href='url' class='tag-link-2' title='el1' rel="tag" style='font-size:xxpt;'>Tag1</a>

  <a href='url' class='tag-link-2' title='el2' rel="tag" style='font-size:xxpt;'>Tag2</a>

</li>

Conclusione

Quanto sarà traumatica la vostra migrazione a WordPress 2.3? Dipende da quanto avete portato WordPress a fare quello per cui non è pensato. Se la vostra installazione è standard potete procedere senza grossi problemi, altrimenti il consiglio è quello di provare, prima di procedere, un’installazione parallela su una copia del database.

Stai leggendo uno di una serie di interventi dedicati a WordPress 2.3.

Risparmiare sui messaggi di errore

L’intervento di Jared Spool su User Interface Engineering sottolinea, se ancora ce ne fosse bisogno, la necessità di progettare form che siano (realmente) usabili.

E’ frequente trovarsi di fronte a form, come quello riportato da Spool, in cui sia possibile evidenziare non uno, ma diversi errori di design.

Form con la scritta: !The ZIP that you entered doesn’t match the City/State you entered. Please verify the information.

Quello che mi ha colpito dell’intervento è stato però il titolo, “Being cheap with error messages”, cioè risparmiare sui messaggi di errore.

Sì, perché quello che molto spesso succede è che già dalla fase di wireframing, di creazione delle bozze, la gestione degli errori nell’interfaccia non venga considerata, perché “tanto al cliente non interessa vedere cosa succede quando l’utente sbaglia o c’è qualche problema”.

Questo atteggiamento prosegue nelle altre fasi di progetto, fino ad arrivare in produzione dove, a meno di trovare qualche programmatore con buone competenze sull’usabilità delle interfacce (e ce ne sono, per fortuna), alla gestione degli errori viene riservato l’ultimo quarto d’ora prima dei test.

Per quella che è la mia esperienza, solo se fin dalle prime bozze è stato previsto di gestire con qualità gli errori, c’è qualche probabilità che questa situazione venga mantenuta fino alla messa online del sito. Proprio meglio non risparmiare in questo caso.

Al Future of Web Apps di Londra

La prossima settimana sarò al FOWA di Londra, la conferenza Future of Web Apps organizzata da Carson.

Non vedo l’ora di ascoltare personaggi del calibro di Matt Mullenweg (WordPress) e John Resig (JQuery). Il programma comincia in realtà fin dalle prime ore alla grande, con un speech di Steve Souders, responsabile della performance dei siti Yahoo! e che sta scrivendo parecchio sul tema, ultimamente.

Spero di riuscire a intervenire su questo sito direttamente da lì, come è successo lo scorso autunno con Le Web 3 di Parigi. Ma spero soprattutto che la connessione wireless sia più stabile.

See you!