Se state sviluppando, come nella maggior parte dei casi, per un cliente,è cruciale che quest’ultimo possa seguire le fasi di sviluppo del proprio sito.
Uno sviluppo in locale, ovvero sulla macchina di produzione senza accesso al web, implica spesso inviare layout, screenshots e l’impossibillità da parte del cliente di testare le funzionalità dinamiche. Può anche andare bene, ma in un ristretto numero di casi. Inoltre, implica un surplus di lavoro che può essere facilmente evitato.
La best practice, il miglior modo di procedere, in questi casi è il seguente.
Innanzitutto creare un’area privata all’interno di un proprio spazio web. Ad esempio, nel caso di un’ipotetica area di sviluppo dell’altrettanto ipotetica azienda “ACME”, si può utilizzare una cartella del tipo: www.acme.com/prova, in cui avremo cura di impedire l’accesso ai motori di ricerca.
Possiamo farlo via robots.txt, aggiungendo al nostro file le due righe necessarie:
User-agent: *
Disallow: /prova/ (attenzione allo “/” finale)
Supponiamo ora che il cliente si chiami “mario rossi ed associati”. Apriremo una cartella www.acme.com/prova/rossi in cui installeremo WP.
Nel file config.php avremo cura di dare un nome univoco alle tabelle del DB. Nel nostro esempio, la riga di definizione delle tabelle in questione diventerà:
$table_prefix = ‘wprossi_’;
o similia.
A questo punto installiamo wordpress accedendo all’home page (ovvero www.acme.com/prova/rossi).
Le tabelle verranno aggiunte al DB con prefisso “wprossi” e quindi chiaramente distinte da quelle di altri siti, e procediamo con lo sviluppo, fase durante cui potremo dialogare anche in modo diretto ed in tempo reale con il cliente, dato che avremo avuto cura di inviarlgi il link all’area di sviluppo.
Al termine, ovvero quando siamo pronti ad installare e andare in linea, sarà sufficiente effettuare il backup completo della root del cliente dall’area di prova e di tutte le sottocartelle, con il nostro client FTP, per avere il salvataggio completo di tutta l’area web.
Poi, utilizzando PHPMyAdmin o simili, faremo accesso al DB, esportando solo le tabelle con prefisso “wprossi”, in un file compresso con uno dei vari metodi a disposizione.
A questo punto, sul sito definitivo del cliente, andiamo a caricare direttamente via FTP il salvataggio effettuato dall’area di sviluppo, avendo cura di scrivere i parametri corretti relativi al DB del cliente nel file config.php. e facciamo lo stesso con il database MySQL, importando il file compresso contenente le tabelle esportate.
Dal pannello di controllo PHPMyAdmin del cliente, andiamo a sostituire i due valori fondamentali nella tabella delle opzioni (nel nostro caso: wprossi_options): ovvero il valore “option_value” delle righe intitolate “site_url” e “home”, in cui andremo a scrivere direttamente l’url della home directory reale del cliente.
A questo punto, semplicemente facciamo accesso alla bacheca del nostro sito appena caricato, installiamo il plugin “search and replace” o simili (ne esistono di diversi, anche migliori) e provvediamo a sostituire nel db ogni occorrenza della stringa “www.acme.com/prova/rossi” con quella reale del cliente “www.rossi.com”.
Una volta effettuata la sostituzione, dovremo andare a modificare a mano eventuali pathname hard-coded nel tema, che però solitamente sono pochissimi, e anche quelli eventualmente inseriti nei plugin, se li abbiamo personalizzati in qualche modo.
Ultimo atto, andiamo nella bacheca di wordpress alla voce “Impostazioni – Permalink” e clicchiamo su “Salva”, forzando la rigenerazione di htaccess e delle opzioni relative ai permalink.
A questo punto il nostro sito sarà perfettamente funzionante ed in linea. Provvediamo a rinominare sul nostro spazio web l’area di prova del cliente, aggiungendo, ad esempio, un suffisso “old” alla cartella di root; nel nostro caso, www.acme.com/prova/rossi diventerà quindi www.acme.com/prova/rossiold. Controlliamo che il sito del cliente non dia degli errori 404 not found (dovuti probabilmente a qualche link che non abbiamo aggiornato).
Se tutto è ok possiamo cancellare definitivamente l’area temporanea e le tabelle dal database.
Effettuiamo un ultimo backup dell’area web del cliente via FTP e del database MySQL direttamente dal pannelo di controllo PHPMyAdmin e archiviamo il tutto.
Operazione terminata in massima sicurezza.
Dopo averlo usato per realizzare alcuni siti, non abbiamo dubbi. La versione 3.5 del noto CMS è decisamente problematica lato utente e al posto di migliorare l’interfaccia l’ha peggiorata e nemmeno di poco.
Parliamo del lato più evidente, ovvero del caricamento delle immagini e dei media a corredo di post e pagine. Non sappiamo per quale motivo abbiano deciso di passare alla finestra a tutto campo, ma il problema è che, mentre nelle versioni precedenti tutto quello che serviva si trovava a portata di mano ed era caricato inline, adesso ti tocca viaggiare tra tre diverse finestre, in cui molto spesso alcuni campi non sono di evidente utilizzo.
Per non parlare dei problemi che ogni tanto spuntano quando carichi un’immagine e, al posto della thumbnail, ti trovi un bel quadrato grigio. Devi andare a modificarla e allora la preview, magicamente ricompare, dopodiché, tornando alla finestra precedente, la puoi finalmente rivedere.
Passiamo alla dashboard. Considerato che serve solo a chi sta “dietro le linee“, qualcuno ci spiega perchè hanno voluto andare a complicarsi la vita con le immagini in alta risoluzione? Nessun utente del pubblico vedrà mai quella parte, mentre chi ci lavora, di solito, o non ha a disposizione uno schermo retina oppure, se ce l’ha, non gliene frega niente di quanto sono belli i pulsanti in HD quando, per pubblicare un’immagine in un post o in una pagina, ci mette il doppio del tempo.
Per finire uno sguardo alla struttura interna e allo spauracchio di ogni aggiornamento: JQuery. Da questa versione i problemi con i conflitti causati da un anche solo imperfetto modo di usare questa libreria, causerà quasi sicuramente errori e malfunzionamenti. (Per inciso, se avete dei problemi sul pulsante per il caricamento dei media, il problema è nel modo in cui il tema installato carica JQuery).
Da un lato questo indurrà sicuramente molti programmatori a scrivere codice strutturato in modo più standardizzato, dall’altro creerà (e sta già creando) a molti sviluppatori un sacco di grattacapi che ritengo potevano essere comodamente evitati.
Ad ogni modo ricordiamoci sempre di una cosa: WordPress è uno dei CMS più usati al mondo, si è evoluto in modo incredibile negli ultimi anni e consente di sviluppare siti di notevole complessità. Il tutto gratis.
Non è da poco, ci pare!
Detto questo ci permettiamo un consiglio personale: prima di aggiornare dalla 3.4.2 alla 3.5, pensateci bene, soprattutto controllando quali e quanti plugin saranno compatibili con la nuova versione; scoprirete che sono parecchi quelli che possono avere problemi. Comunque preparate la cosa con cura. Create un ambiente di test e provate prima l’effetto che potrà avere l’aggiornamento prima di installarlo su siti in linea; e soprattutto non dimenticate un backup completo e controllato di tutto il sito e del database completo.
In caso di problema, tornare indietro senza questo accorgimento può davvero diventare un bagno di sangue!
A chiunque sviluppi siti WordPress based prima o poi capita l’empasse: che plugin uso per la condivisione su Facebook? Non dico social network a ragion veduta: tutti gli altri social hanno un’API ormai stabilizzata, compreso Google con il suo Plusone, per cui il codice è ormai standardizzato e semplice da inserire.
In effetti i problemi nascono proprio quando si tratta di implementare la condivisione su Facebook. Gli aspetti problematici sono due: da un lato le politiche di FB che cambiano ogni due per tre, dall’altro l’interazione di Open Graph che spesso presenta problemi di compatibilità, sia con il codice che con altri plugin.
L’inserimento diretto nei sorgenti dei temi può essere una soluzione ma va sempre valutato il fattore tempo: inserire il codice implica spesso un bello sforzo di programmazione che non sempre paga, soprattutto se si vogliono inserire funzioni diverse relative a FB, come ad esempio Like Box o commenti integrati.
Risulta quindi naturale utilizzare qualche plugin ben testato e manutenuto e limitare lo sforzo di programmazione all’inserimento della chiamata alla funzione nel punto desiderato del tema.
Qui sorgono i problemi: ad oggi, dire che esiste un plugin che funziona con tutti i temi e in congiunzione con tutte le altre funzioni social-related è semplicemente impossibile. C’è quello che funziona come Like ma non sceglie correttamente l’immagine, quello che se non metti l’immagine in evidenza non la tira fuori nemmeno sotto minaccia, quello che non compare sulla bacheca a meno che non aggiungi un commento e quello che funziona perfettaente fino a che non decidi di attivare qualche funzione jquery allorché smette misteriosamente di fare il suo lavoro.
Personalmente scelgo di volta in volta, personalizzando i plugin a seconda delle esigenze. Ad oggi i plugin che trovo più utlizzabili sono quelli qui di seguito.
Sicuramente completo, anche se macchinoso da inizializzare. Però funziona (quasi) sempre senza troppe personalizzazioni.
Sicuramente non è il migliore e neppure il più recente (si ferma con la garanzia di compatibilità a WP 3.1.3). In compenso ha un codice molto chiaro da personalizzare e in poche righe lo si rende sempre compatibile con le versioni più aggiornate di WordPress.
Facebook Comments di Alex Moss
Comodo e funzionale. Inoltre presenta una notevole comodità di personalizzazione.

A volte mi è capitato che qualcuno non trovasse i campi personalizzati che abitualmente si trovano sotto l’editor di WordPress. La questione è risolta facilmente: la colpa è di un piccolo tab, che spesso sfugge all’attenzione, situato in alto a destra in tutte le schermate del backend. Eccolo qui sotto.

Cliccando sul tab “impostazioni schermo“, vi comparirà tutta una serie di opzioni, il cui numero dipende strettamente dai plugin che avete installato, oltre che dalla schermata in cui vi trovate. Se siete nell’editor, avrete una serie variabile di opzioni attivabili, ma sicuramente ci saranno come minimo quelle corrispondenti a “Riassunto”, “Invia Trackback”, “Campi personalizzati”, “Discussione”, “Abbreviazione” e “Autore”.

Ponendo il segno di spunta sulle opzioni desiderate, i campi relativi compariranno al di sotto della finestra dell’editor.
Una sciocchezza, ma di quelle che fanno perdere magari un’ora, proprio quando il tempo ti manca letteralmente sotto le dita.
Ancora un booktrailer per Adea Edizioni. In questo caso si tratta del lancio del nuovo libro di Vittorio Mascherpa, “Istruzioni per rendersi felici“.
Un po’ di olio di gomito, soprattutto sulla sincronizzazione della colonna sonora.
Molte persone oggi hanno trovato alcuni siti segnalati come promotori di Malware.
L’errore, già il secondo quest’anno, è dovuto ad una issue in Avast, che nel penultimo aggiornamento (l’ultimo è di pochi minuti fa), ha generato un bel po’ di errori.
Anche HiStats, il noto sito di statistiche web, forse il più usato nel mondo dei blogger, risultava infetto (ovviamente in modo del tutto illegittimo), da malware.
Avast ha già rilasciato l’aggiornamento che risolve il problema.
Suggeriamo a tutti coloro che hanno installato questo antivirus, di forzare l’aggiornamento delle definizioni per risolvere questo problema!




Sembra un controsenso, una dichiarazione folle. E invece è vero. Proviamo ad analizzare il modo in cui funzionano i vari Social, Facebook in testa a tutti.
Si riparte! Eliminata la sezione Formazione (deputata a 