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.

WordPress 2.3 l’ho sviluppato anche io

Il bello del software opensource è che chiunque, a vario titolo, può contribuirne alla creazione, allo sviluppo, al test o alla diffusione. Il bello del software opensource è anche che, a fronte di un problema, è molto probabile trovare in tempi brevi una soluzione.

E’ successo anche a me. Nel provare la futura versione di WordPress, la 2.3, ho notato e riportato come la cancellazione delle categorie non avvenisse correttamente. Quello che si verifica è che compaiono misteriosamente altre categorie le cui etichette sono numeri.

Potevo limitarmi a scriverlo in Fucinaweb – e devo dire che la pigrizia stava avendo il sopravvento – ma ho invece deciso, incuriosito, di segnalare il problema agli sviluppatori di WordPress.

Per farlo ho seguito le semplici indicazioni riportare sul sito: mi sono iscritto alla mailing list per i tester, ho inserito la segnalazione cercando di essere il più dettagliato possibile (anche se con un inglese tutt’altro che perfetto) e ho atteso fiducioso.

Ho atteso 4 ore. 4 ore e la correzione al codice è stata fatta e incorporata nella prossima beta di WordPress 2.3. Per vederlo basta andare alla relativa pagina aperta in Trac, il sistema di gestione dei malfunzionamenti di WordPress:

Spurious categories created when a category is deleted
Deleting a category that has posts causes new categories to be created. These categories have names that are the same as the ids of the categories that were associated with the posts.
http://comox.textdrive.com/pipermail/wp-testers/2007-September/005075.html
Closed defect: fixed

Davvero efficienti! E viene anche riconosciuta, mediante il link qui sopra, la “paternità” della scoperta a chi ha segnalato il problema.

E’ anche la dimostrazione che per aiutare nella gestione di un progetto opensource non è necessario essere esclusivamente sviluppatori, sapere come funziona un sistema di controllo e gestione delle versioni o smanettare a più non posso. Chiunque con un minimo di curiosità può dare una mano.

A questo punto non vedo l’ora di installare, e provare, la nuova beta. Sento WordPress anche un po’ mio.

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

Uno sguardo a WordPress 2.3

E’ sempre difficile resistere alla tentazione di provare la nuova versione di un programma, soprattutto se è un software, come il caso di Wordress, che si usa ogni giorno. Visto poi che, come dicevo qualche giorno fa, WordPress 2.3 promette di essere ricco di interessanti funzionalità e migliorie, resistere è quasi impossibile.

Ho allora installato una versione beta 1 di WordPress 2.3 evitando però di lavorare sul sito che vedete in linea, ma procedendo alla copia in una sottocartella. Perché quando parliamo di “beta” per un software come WordPress non si intende, come è stato per esempio con Gmail, una versione che ospita solo funzionalità base o che può comportarsi, a volte, come non ci si aspetta. No, installare la versione beta di WordPress vuol dire rischiare di compromettere i dati e non avere neppure la possibilità di ritornare alla versione precedente.

Ho proceduto in questo modo:

  • ho creato una sottocartella nel dominio di Fucinaweb in cui ho copiato la beta di WordPress
  • vi ho copiato dall’attuale sito il contenuto della cartella wp-content, selezionando però a mano i plugin, così da non sovrascrivere quelli della versione 2.3
  • ho esportato il database di Fucinaweb e l’ho reimportato in altra istanza
  • poiché cambia il percorso del blog, è necessario intervenire a mano in una tabella del database, la wp_options. Niente di tremendo per la verità: ho semplicemente trovato le due occorrenze dell’URL del sito e aggiunto la cartella in cui si trova la versione beta
  • ho disabilitato tutti i plugin
  • ho anche configurato per sicurezza WordPress (Opzioni, Privacy) in modo da bloccare motori di ricerca, Technorati e altro, così che il sito di prova non compaia improvvisamente da qualche parte.

Così sono riuscito a ottenere una versione speculare del sito da provare in tranquillità. Ed ecco i risultati con le prime impressioni su questa beta.

Schermata di gestione

La schermata di gestione degli interventi è più funzionale rispetto alla precedente, nel senso che permette una ricerca efficace grazie a una rinnovata maschera posizionata in alto.

image

Come per WordPress 2.2, ciascun autore può vedere il titolo degli articoli pubblicati, presenti e futuri, anche dagli altri. Avrei sperato in un filtro

Inserimento di un intervento

Chi scrive molte bozze troverà un po’ di pulizia: solo le ultime 3 compaiono in alto alla schermata. Le altre sono invece accessibili mediante ricerca.

image

La modifica più attesa riguarda comunque l’inclusione del sistema di tagging, che precedentemente richiedeva plugin esterni. In effetti nella maschera di inserimento è prevista questa possibilità.

image

Non sembra però che i tag già usati vengano “autocompletati” (alla del.icio.us) o che sia possibile far comparire una lista dello storico (alla Ultimate Tag Warrior). Speriamo il tutto sia dovuto solo al carattere di beta 1, perché sarebbe davvero un peccato non disporre di qualche aiuto nella selezione dei tag. Va anche segnalato che questa beta non funziona con l’ultima versione di Ultimate Tag Warrior (c’è qualche variabile definita allo stesso modo che dà errore), per cui il consiglio è di non abilitare il plugin.

Se l’autore non ha i diritti di pubblicazione diretta (è, per esempio, un “contributor”) cambiano, rispetto alla versione 2.2, le opzioni di salvataggio. In particolare compare “submit for review”, che indica la possibilità di richiedere a chi ne ha i diritti, l’amministratore per esempio, di valutare l’intervento per la pubblicazione.

image

E in effetti l’articolo salvato in questo modo è catalogato a parte. Ecco cosa vede l’amministratore dopo il salvataggio da parte di un “contributor”.

image

Sarebbe bello, in futuro, che l’amministrazione e gli altri utenti in grado di valutare questi interventi potessero ricevere anche una notifica via email.

Importazioni

Se già usate Ultimate Tag Warrior per aggiungere i tag ai vostri interventi, sarete felici di sapere che WordPress 2.3 prevede una funzione di importazione.

image

Per prima cosa sono letti i tag dalla tabella di Ultimate Tag Warrior.

image

Poi sono lette le relazioni con gli interventi inseriti e i tag.

image

E infine sono importati.

image

Il tutto nella mia installazione ha funzionato senza alcun problema. Agli interventi sono in effetti stati associati i tag precedentemente gestiti con Ultimate Tag Warrior.

WordPress 2.3 porta all’estremo il concetto di tag dando la possibilità di importare le stesse categorie in tag. Se vi siete chiesti a cosa serve distinguere categorie e tag, in questa mossa c’è forse un accenno di risposta.

image

Tutto rose e fiori?

La beta 1 di WordPress 2.3 è abbastanza stabile: abbastanza, non molto. Nelle mie prove ho riscontrato qualche serio problema nella gestione delle categorie. Provando a eliminarne qualcuna ne sono improvvisamente comparse altre con nomi esoterici. Segno che qualcosa da sistemare c’è ancora.

image

Sempre in tema di categorie, anche l’importazione delle categorie in tag ha creato qualche problema. Ho infatti provato a importare una categoria (accessbilità) già presente come tag. Ricevendo in risposta un messaggio di errore fin troppo chiaro.

image

Conclusioni

WordPress 2.3 promette bene. Speriamo che da qui alla versione finale venga migliato il supporto ai tag, in quanto al momento è poco più che embrionale. Un’eventuale migrazione di un blog andrà comunque pianificata con attenzione, viste le numerose modifiche alla struttura dati del prodotto.

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