Tag Archive for 'wordpress'

A quick keyword bookmarklet per WordPress

Visto che mi ero rotto le scatole di avere una decina di segnalibri per la gestione del blog li ho unificati in uno unico, lo posto così magari può servire anche a qualcun’altro. (anche se non credo, ma nella vita non si sa mai :-) ).

Basta aggiungerlo ai segnalibri e associargli una keyword, io ad esempio ho scelto blog. Una volta associata la keyword, basterà digitare la keyword seguita da uno dei seguenti commandi per andare alla pagina desiderata.

Esempi:

  • blog scrivi – va alla pagina per la scrittura di un nuovo articolo;
  • blog bacheca – fa il login e si porta sulla pagina principale (Bacheca);
  • blog plugin – va alla gestione dei plugin;
  • blog gestione – va alla pagina per la gestione del blog;
  • blog opzioni – va alla pagina delle opzioni generali di WordPress;
  • blog – senza parametri o con un parametro diverso da quelli qui indicati, manda alla home del blog.

Questi invece sono attivi solo se si usa K2 (il primo) e il plugin Wp-backup (il secondo):

  • blog k2 – porta alla pagina di gestione della barra laterale di K2;
  • blog backup – porta alla pagina per effettuare un backup del database (via wp-backup);

Si possono, con un minimo di conoscenza di Javascript, aggiungerne anche altri, a me per ora questi bastano visto che sono quelli che visito più spesso :-) ,.

Per farlo funzionare su un blog diverso dal mio, sostituire:

javascript:var s='%s';url='http://www.gialloporpora.org';

con l’indirizzo della home del proprio blog. Fine. Ecco il bookmarklet:

<–Quick bookmarklet to wordpress blog–>

Trascinarlo nella barra degli indirizzi e poi indicizzarlo con una keyword. Io l’ho provato solo con Firefox 3, però credo possa funzionare anche con Opera, casomai domani verifico :-) .

EDIT: Funziona egregiamente anche con Opera :-D , la procedura per aggiungerlo è un po’ diversa da quella da eseguire con Firefox, il link va infatti aggiunto come motore di ricerca invece che come segnalibro. Per sapere come fare, leggere: Engelium.

Ne ho anche uno per i forum SMF ottimizzato per due o tre sezioni del forum di MozillaItalia, quando ho voglia (cioè forse mai visto che a me va bene anche così :-P ) di aggiungerci tutte le sezioni magari lo posto. Ovvio che se qualcuno lo vuole così com’è glielo passo :-) .

Technorati Tags: , , ,

K2 RC6 e WordPress 2.5.1

AGGIORNAMENTO: per chi stesse cercando una localizzazione in italiano del K2 RC7, leggere questo commento. Al momento non ho tempo di aggiornare il blog con la nuova versione del K2, quindi eventuali feedback sono graditi :-) .

Essendo stata rilasciata la RC6 del tema K2 ho deciso di procedere all’update. Purtroppo c’è stata qualche modifica al tema, spero non ci siano troppi problemi, e comunque credo di avere un po’ di tempo questo week-end per rivedere il layout del blog.

Per chi volesse la mia personale localizzazione del K2 i file li trovate qui:

Purtroppo il file POT distribuito con la RC6 è corrotto (vedi anche questo Topic sul forum di K2) e ho dovuto modificarlo manualmente con un editor di testo per farlo funzionare. Per ora mi sembra non ci siano problemi, però avendolo dovuto modificare a manina, è possibile che qualcosa di sbagliato ci sia :-P . I titoli dei moduli non sono più traducibili, ma resta possibile personalizzarli una volta aggiunti alla sidebar, che tradotto significa: « il titolo del modulo mostrato al lettore lo si può decidere personalizzando il modulo stesso ».

Con un po’ di fortuna, stasera aggiorno anche a WordPress 2.5.1.

Technorati Tags: ,

(34)

WordPress 2.5, K2 e siti di social news

E’ uscita da poco la versione di WordPress 2.5, purtroppo genera uno spiacevole errore col tema K2 (sia RC3 che RC4) quando si cerca di accedere al pannello admin:

Fatal error: Call to undefined function wp_register_sidebar_widget() in …/…/wp-admin/includes/dashboard.php on line 31

la cosa succede solo a chi sta utilizzando il Gestore della Barra Laterale di K2. Per fortuna la soluzione al problema è molto semplice la potete trovare leggendo questo articolo.

Al momento, non penso comunque di fare l’aggiornamento alla 2.5, voglio prima testarla per bene in locale e poi procedere all’update. A quanto ho visto non sembrano esserci particolari problemi – a parte quello sopracitato – con il K2, anche se l’interfaccia admin a me sembra peggiorata rispetto a WP 2.3 :-P .

Altro problema che riscontravo da qualche tempo è il mancato funzionamento della “Navigazione Avanzata” di K2. In pratica, accedendo alla home del blog e cliccando sul tasto “Indietro” non si riusciva a navigare nella cronologia , e al posto di caricare la seconda pagina dell’archivio veniva caricata una pagina completamente bianca:-P . Ebbene, il responsabile è il plugin di oknotizie che al momento ho disattivato.

Credo il problema sia dovuto al document.write usato per inserire l’iframe di voto, infatti la mia versione alpha modificata del plugin che inserisce il voto su Wikio, e che usa puro HTML, non sembra essere affetta dallo stesso problema. Per il momento lascio attivo l’iframe di Wikio, successivamente proverò a modificare il plugin di Traffyk.

A proposito di siti di social news, segnalo questa notizia:

Digg acquista il 90% di Diggita, nasce Digg Europa

Si può notare anche dal new look del sito più simile a quello di Digg. Speriamo vengano implementate anche le fantastiche API del parente di oltre oceano .-) .

Technorati Tags: , , , , ,

(14)

Plugin utilizzati e qualche modifica al blog

Ho fatto qualche piccola modifica al blog e altre conto di farne in futuro. Con molta calma :-P .Questo è un elenco delle modifiche apportate (che serve soprattutto a me come promemoria in caso di aggiornamento del K2 .-) :

  • aggiunti gli accesskey, l’elenco completo lo trovate nella pagina “accessibilità” raggiungibile dal menu nell’header, anche se non ne avete bisogno può tornare utile l’accesskey S per inviare il commento (funziona solo una volta, se si posta un secondo commento entra in funzione Ajax Live Comment e smette di funzionare);
  • alla fine di ogni commento apparirà il browser e il sistema operativo utilizzato dal commentatore;
  • invece di mostrare gli ultimi commenti vengono visualizzate le discussioni più attive, quattro commenti per ogni discussione;

Se chiunque abbia commentato non ha piacere che venga visualizzato il browser ed il sistema operativo utilizzati può farmelo presente che rimuovo l’user agent dal database. Solo i commenti successivi al 20 novembre 2007 mostreranno l’user agent, per tutti quelli precedenti a tale data non viene mostrato nulla.

Per quanto riguarda l’aspetto del blog devo apportare alcune modifiche ai colori e forse ai font utilizzati però lo faccio quando ho tempo quindi è possibile ci vogliano mesi per arrivare ad un template definitivo. Il sottoscritto è famoso per essere un’antiesteta quindi se vedete qualche colore o font che è fuori abbinamento segnalate pure :-P .

A dire la verità volevo fare uno stile indipendente da immagini sul server, embeddandole nel CSS come data link, però c’è un browser che non è d’accordo :-P , magari un giorno carico lo stile alternativo e faccio vedere come viene visto il blog da un browser e come viene visto da IE :-P . Se IE6 non vede le trasparenze delle PNG è un problema suo.

Se qualcuno vuole la versione modificata del file comments.php con gli accesskey e l’aggiunta del codice per la visualizzazione dell’user agent può farmelo presente che glielo faccio avere. Naturalmente il file comments.php fa riferimento al tema K2. Ho avuto l’accortezza di usare il function_exist quindi anche se non è installato il plugin per la stampa dell’user agent non si hanno errori (almeno spero :-P ). Il plugin in realtà è in grado di riconoscere anche gli user agent dei trackback (la piattaforma di blogging) però per ora non mi interessa complicarmi ulteriormente la vita.

Questo è l’elenco dei plugin installati:

  • Akismet – verifica se un commento è spam o meno usando il database di akismet.com;
  • All in One SEO Pack - ottimizza il blog per i motori di ricerca (SEO = Search Engine Optimizing), aggiornato una decina di volte in due mesi :-P ;
  • Audio Player – come dice il nome;inserisce il player per la riproduzione di un file audio;
  • Brian Latest Comments – visualizza i post più attivi con relativi commenti, è supportato di default dal widget di K2, il che significa che non serve modificare nessun file se si usa questo fantastico tema :-D ;
  • Browser Sniff – mostra l’user agent del commentatore, conto di modificarlo leggermente per sniffare anche quello del visitatore;
  • DoFollow – rimuove il nofollow dal link dei commentatori e dai trackback;
  • Feedburner FeedSmith – ridireziona tutti i feed su FeedBurner
  • Google XMLSitemap Generator – crea il file sitemap per i motori di ricerca;
  • Gravatars – mostra il gravatar nei commenti. Non è il miglior plugin ma è supportato di default da K2 senza toccare il file comments.php, conto di cambiarlo a breve visto che quando commento come amministratore non mi fa scegliere l’immagine da mostrare;
  • Oknotizie – il plugin di Traffyk che permette di far votare la notizia su Oknotizie;
  • Related Posts – (il mio preferito) mostra suggerimenti a tema che potrebbero interessare i lettori, supportato di default da K2, ma solo nella sidebar, io lo preferisco nel file single.php;
  • Simple Tags – aggiunge i tag di Technorati in modo molto semplice, io lo ho modificato per inserire i tag di blogbabel;
  • Subscribe To Comments – permette di notificare via email i nuovi commenti ad una discussione a cui ci si è iscritti. All’inizio era spuntata di default la voce per la notifica, poi l’ho rimossa perchè qualcuno non usa email di proprietà, e qualcun’altro non legge il testo delle email di notifica :-P ;
  • The Welcome Plugin – Il plugin di Andrea Micheloni che saluta i visitatori e i Mybloglog dotati (in alto nella sidebar);

Mi sembra che siano tutti. Poi aggiungo tutti i link ad una pagina statica di ringraziamenti :-) .

Technorati Tags: , ,

Plugin di voto su Oknotizie by Traffyk

Con un po’ di ritardo mi sono accorto di uno splendido plugin per Oknotizie creato da Traffyk, che permette in modo molto semplice di inserire il pulsante di voto di Oknotizie in un iframe in fondo alla notizia stessa. Il plugin è disponibile per WordPress e Blogger, ma se date un’occhiata al codice l’idea può essere utilizzata anche su altre piattaforme di blogging.

Non c’è che dire davvero un’ottimo plugin. Non molto tempo fa avevo detto che Oknotizie non mi piaceva un granchè, in ogni caso il fatto di poter inserire il pulsante di voto direttamente sul blog, senza dover aprire popup per il voto, è davvero una gran cosa, speriamo che anche altri siti di raccolta notizie prendano ispirazione da questa idea e mettano ben presto a disposizione qualcosa di simile.

Secondo me, Oknotizie dovrebbe fare una donazione all’autore, visto che, è riuscito a creare un qualcosa che sicuramente aumenterà la popolarità di questo sito di social digging. Nella pagina del plugin è spiegato nei dettagli come utilizzarlo, io non aggiungo nulla a riguardo. Questa pseudo notizia, che ha l’unico scopo di dare un trackback all’autore, non la inserisco su Oknotizie, quindi se volete vedere un’anteprima del plugin visitate la pagina del plugin stesso, o date un’occhiata al post precedente.

Io mi permetto solo di dare un piccolo consiglio per migliorare il bookmarklet utilizzato per postare la notizia su Oknotizie e disponibile nel pannello di configurazione del plugin stesso. Non mi sembra una brutta idea aggiungere un po’ di codice per automatizzare il processo di rilevazione dell’ID numerico della notizia, una cosa del genere:

if (location.host=='oknotizie.alice.it') {
x=location.href.split('/');
prompt("Questo è l'ID numerico della tua notizia:",x[4]);

in modo che utilizzando il bookmarklet sulla pagina di oknotizie, invece di provare a segnalarla faccia apparire un bel prompt con l’ID numerico da copiare/incollare nei campi personalizzati della notizia appena segnalata. Qui di seguito metto il bookmarklet modificato, usandolo su un sito diverso da oknotizie procederà a fare la segnalazione, usandolo nella pagina della notizia farà apparire l’ID numerico di quest’ultima.

Segnala su Oknotizie

AGGIORNAMENTO: facendo una segnalazione mi sono accorto che ci sono due pagine da cui è possibile ricavare l’ID numerico, una è quella a cui si accede tramite feed, l’altra quella che mostra la pagina del blog in un iframe. Ora il bookmarklet riesce a rilevare l’ID da entrambe.

Sperando non ci siano errori :-P .

Plugin per Oknotizie

AGGIORNAMENTO: come preannunciato da Traffyk nei commenti è disponibile una nuova versione del plugin, che rende inutile questo bookmarklet, che associa automaticamente il valore al campo personalizzato al primo accesso di un visitatore all’articolo segnalato, non c’è che dire una grande idea ! Qui l’articolo di Traffyk che annuncia l’aggiornamento del plugin.

Dimenticavo. Leggete la licenza se non volete essere condannati alla sfiga eterna.

PS: cercando con Google al primo posto appare un altro plugin simile, voi comunque usate questo.

Technorati Tags: , , ,

Interfaccia del K2 in italiano, uno strano problema

Avevo promesso di localizzare linterfaccia del blog, in realtà lavevo lasciata in italiano per un giorno intero, poi però mi sono accorto di un fastidioso problema con il Gestore delle Barre Laterali (K2 Sidebar Manager) che mi ha fatto cambiare idea. Praticamente era impossibile trascinare i moduli nella barra laterale in quanto questa non appariva:

Visualizzazione errata del K2 Sidebar Manager
Essendoci un problema di versione, io ho installato la RC3 di K2 mentre la localizzazione faceva riferimento all’ultima release stabile di K2 (0.96), mi ero convinto che fosse un problema di compatibilità e ho lasciato perdere.Domenica scorsa avevo un po di tempo libero e ho deciso di mettermi con calma a localizzare il tema partendo dal file k2.pot della mia versione di K2. Letta velocemente un po di documentazione mi sono scaricato POEdit e mi sono messo diligentemente a tradurre le stringhe del tema. Un po scopiazzando dalla versione ufficiale, un po lasciando perdere alcune stringhe che i visitatori non vedranno mai, sono riuscito finalmente ad arrivare alla fine :-) . Ma una spiacevole sorpresa mi aspettava: il problema con il K2 Sidebar Manager era rimasto immutato :-P .Insomma, ero riuscito a perdere due ore per ritrovarmi al punto di partenza. Non ricordo bene il motivo, ma spinto dalla disperazione, ho cominciato a fare cose assurde, una di queste (strano ma vero) ha avuto successo. Cercando nel file it_IT.po alla riga 675 ci sono queste righe si trova questo codice:

#, php-format
msgid "Sidebar %d"
msgstr "Barra Laterale %d"#: app/classes/sbm.php:332

#, php-format
msgid " %d"
msgstr "%d"

sostituendo tutti i %d con %s e ricompilando il problema sparisce :-) .

Visualizzazione corretta del K2 Sidebar Manager
Non chiedetemi il perché funzioni, ma funziona ! (credo che il %d stia ad indicare una formattazione numerica e il %s una stringa). Fra laltro apportando le stesse modifiche al file di localizzazione ufficiale della versione 0.96 si hanno gli stessi benefici (gli screenshot sono stati fatti usando la localizzazione ufficiale del K2). Naturalmente alcune nuove stringhe introdotte nella nuova versione rimangono in inglese.

Comunque visto che ci avevo perso davvero tanto tempo per localizzarmelo da me (uhm, a copiare/incollare dal la localizzazione ufficiale) ho deciso di utilizzare la mia versione personalizzata :-) .

Ora linterfaccia utente del blog dovrebbe, per la gran parte, essere disponibile in italiano :-) . Spero non ci siano sgraditi inconvenienti dovuti ad unerrata localizzazione :-P . Ah, i mesi nella navigazione avanzata sono in inglese perché non ho trovato nessuna stringa di localizzazione, e quindi rimaranno in inglese.PS: è la terza volta nel giro di una settimana che aggiorno il plugin All in One SEO Pack :-P

Technorati Tags: , ,

Primi passi con WordPress, plugin OpenSearch e favicon

Nonostante il plugin OpenSearch per il proprio blog sia un’inutile vezzo – del resto a chi potrebbe mai interessare ? – io lo avevo sul vecchio blog SPB e lo ho voluto portare anche su WordPress. Il plugin di ricerca può essere installato dai browser che lo supportano, permettendo così il suo utilizzo direttamente dalla search bar. Affinché il browser riconosca la presenza di un plugin OpenSearch è necessario inserire queste informazioni nella sezione <head> della pagina.

In Simple Php Blog era necessario modificare il file index.php ed inserire la riga di codice necessaria allo scopo, in WordPress è invece possibile creare un plugin che inserisca direttamente il riferimento al plugin nell’head, senza per questo dover modificare il tema. Il vantaggio è che non sarà necessario rimodificare il file header.php del tema utilizzato ogni qualvolta verrà aggiornato o addirittura sostituito con un altro tema.

La stessa cosa vale anche per la favicon del sito (l’icona rappresentativa del sito che appare nella barra degli indirizzi). Cercando con Google ci sono plugin appositi che permettono di inserire la favicon; plugin che fanno fin troppe cose rispetto alle mie necessità, ho quindi deciso di scopiazzare uno di questi plugin (Favicon Manager per inserire sia la favicon che il search plugin. La cosa non è affatto difficile. Di seguito il codice del plugin che inserisce sia la favicon che il search plugin nella sezione head in modo tale da renderli visibili ai browser:

<?php
/*
Plugin Name: Add favicon and Search Plugin
Plugin URI: http://www.gialloporpora.netsons.org
Description: Aggiunge la favicon e il searchplugin nella sezione head, in modo che vengano riconosciuti dai browser
Version: 0.1
Author:gialloporpora
Author URI:http://www.gialloporpora.netsons.org
*/
/*
Copyright (C) 2006 Cindy Moore
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details.

http://www.gnu.org/licenses/gpl.txt

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
*/
function gpadd_favicon_to_headers()
{
$favicon_location="URL della favicon";
print "\t";
print '<link rel="shortcut icon" href="'.$favicon_location.'" />';
print "\n";
}
function gpadd_searchplugin_to_headers()
{
$searchplugin_location = "URL del file XML del plugin OpanSearch";
$searchplugin_title="Il blog che non c'è";
$searchplugin_title="Il blog che non c'è";
print "\t";
print '<link rel="search" type="application/opensearchdescription+xml" title="'.$searchplugin_title.'" href="'.$searchplugin_location.'" />';
print "\n";
}
// insert favicon into header using WP hooks
add_action('wp_head', 'gpadd_favicon_to_headers');
// insert search plugin  into header using WP hooks
add_action('wp_head', 'gpadd_searchplugin_to_headers');
?>

Naturalmente non ho previsto un’interfaccia di configurazione, è necessario modificare a manina i percorsi della favicon e del search plugin, ma del resto è quello che mi serviva (i menu creati dai plugin iniziano ad essere sin troppi). Per creare il file XML del plugin OpenSearch provate a guardare fra i link che related posts dovrebbe inserire a fine post :-) (un plugin del genere per i forum sarebbe un sogno :-) ). Probabilmente esisterà un plugin serio per WordPress che permette di fare le stesse cose e che offre una bella interfaccia per la configurazione.

Download:
Add favicon & SearchPlugin.

Technorati Tags: , , ,

Da Simple Php a WordPress

Questo post probabilmente interesserà solo Stormy e in esso spiego un po’ meglio come ho fatto a trasportare il blog da Simple Php Blog a WordPress.

Per farlo ho utilizzato un piccolo script in Python che salva in un file WXR (WordPress Extended RSS) tutti i post e i commenti del vecchio blog. Questo file sarà poi importabile in WordPress che si arrangerà a riempire il database. Lo script non è perfetto ed è ottimizzato per funzionare con il codice che io avevo usato nel vecchio blog, in particolare, non ho previsto una conversione del tag [;img] visto che non lo avevo mai usato (o quasi).

Una volta installato Python (è facile basta cliccare sempre “Avanti”) dovrai scompattare il file che contiene lo script (link) nella cartella di Python (in teoria “C:\Python25″ se scarichi l’ultima versione disponibile). Ora dovrai modificare i due file che ci sono:

head.xml

Contiene delle informazioni generali circa il blog, la sua modifica non è indispensabile in quanto si può sempre cambiare i dati in esso presenti in un secondo momento. In ogni caso, se si decide di modificarlo assicurarsi di salvarlo con codifica utf-8, motivo per cui serve un editor serio tipo Crimson Editor o Notepad++, il Notepad in questo caso non può essere usato.

spb2wp.py

Bisogna modificare le variabili globali (hanno un prefisso gb_, nello specifico:
gb_perc contiene la cartella in cui è salvato il database di Simple Php Blog in locale (attenzione che bisogna usare la doppia “\\” nei percorsi dei file)
gb_url l’url in cui verrà installato il nuovo blog WordPress (consiglio personale di lasciare il localhost seguito dalla cartella in cui hai installato WordPress localmente)
gb_categorie le categorie di Simple Php Blog come (numero -> categoria)
gb_feed l’url del feed RSS (o atom) del vecchio blog. Non è indispensabile, serve solo nel caso si voglia creare il file per i redirect 301

Poi ci sarebbe il “gialloporpora” come autore per cui non è stata prevista una variabile, ma anche se lo lasci in fase di importazione WordPress ti chiederà di assegnare gli articoli ad uno degli utenti presenti sul tuo blog e ignorerà questo campo.

Una volta fatte le modifiche salvare il file normalmente (non con codifica utf-8).

Bene ora basta avviare Python, da commandline:

C:\>cd \python25
C:\>Python25> python

Quando appare il prompt di benvenuto di Python dare i seguenti comandi:
>> from spb2wp import *
> createwxr()
>>> optimizewxr()

Bene, ora il file dovrebbe essere stato creato in “C:\Python25″ con il nome di spb2wp.xml. Non è detto che sia tutto perfetto, anzi è probabile il contrario, ma il file è modificabile con un editor di testo e contiene tutti i post e i commenti del vecchio blog.. Diciamo che con un buon editor di testo con un po’ di Search&Replace si possono correggere in una decina di minuti gli eventuali problemi rilevati. In particolare, cercare eventuali tag ?[;img] o [url=....] ancora presenti nel codice. E’ importante salvarlo con codifica utf-8.

Bene, una volta fatte le eventuali correzioni basta importarlo in WordPress e sperare !

Purtroppo lo script non è stato pensato per esportare un generico Simple Php Blog ma bensì per esportare solo il mio di blog :P , ci sono quindi delle cose particolari che potrebbero generare problemi su un altro blog (in particolare io ho sempre fatto l’encode degli & quando inserivo HTML puro, se non lo si è fatto bisogna rimuovere una riga di codice).

Non è pensato per esportare le entry statiche per quello bisogna fare a mano. Non ho modificato i vecchi link, ma è possibile creare un file index.php che faccia i giusti redirect 301 e che va messo nella home del vecchio blog (se i due blog sono installati nello stesso percorso bisogna aggiungere il codice all’index.php di WordPress). Per reindirizzare anche i commenti rinominare il file “index.php” in “comments.php” e caricarlo sul server. Non ho previsto un redirect delle pagine statiche (si sta prima a farlo a mano) nè delle categorie.

Se poi ti trovi bene e vedi che funziona anche a te ti posso dire come modificare i file di SPB in modo da generare una sitemap della morte (update odierno e aggiornamento a never) , ricordo che l’avevo fatta quando avevo traslocato da altervista, ma non mi ricordo di preciso come avevo fatto :-P .

Se ti dà qualche errore (il che è probabile) me lo segnali che provo a personalizzarti il codice.

Nota: il database deve essere vuoto per fare l’import del file perchè non sovvrascrive i vecchi post durante l’importazione (almeno mi sembra)
Questo post probabilmente interesserà solo Stormy e in esso spiego un po’ meglio come ho fatto a trasportare il blog da Simple Php Blog a WordPress.

Per farlo ho utilizzato un piccolo script in Python che salva in un file WXR (WordPress Extended RSS) tutti i post e i commenti del vecchio blog. Questo file sarà poi importabile in WordPress che si arrangerà a riempire il database. Lo script non è perfetto ed è ottimizzato per funzionare con il codice che io avevo usato nel vecchio blog, in particolare, non ho previsto una conversione del tag [img] visto che non lo avevo mai usato (o quasi).

Una volta installato Python (è facile basta cliccare sempre “Avanti”) dovrai scompattare il file che contiene lo script (link) nella cartella di Python (in teoria “C:\Python25″ se scarichi l’ultima versione disponibile). Ora dovrai modificare i due file che ci sono:

head.xml

Contiene delle informazioni generali circa il blog, la sua modifica non è indispensabile in quanto si può sempre cambiare i dati in esso presenti in un secondo momento. In ogni caso, se si decide di modificarlo assicurarsi di salvarlo con codifica utf-8, motivo per cui serve un editor serio tipo Crimson Editor o Notepad++, il Notepad in questo caso non può essere usato.

spb2wp.py

Bisogna modificare le variabili globali (hanno un prefisso gb_, nello specifico:
gb_perc contiene la cartella in cui è salvato il database di Simple Php Blog in locale (attenzione che bisogna usare la doppia “\\” nei percorsi dei file)
gb_url l’url in cui verrà installato il nuovo blog WordPress (consiglio personale di lasciare il localhost seguito dalla cartella in cui hai installato WordPress localmente)
gb_categorie le categorie di Simple Php Blog come (numero -> categoria)
gb_feed l’url del feed RSS (o atom) del vecchio blog. Non è indispensabile, serve solo nel caso si voglia creare il file per i redirect 301

Poi ci sarebbe il “gialloporpora” come autore per cui non è stata prevista una variabile, ma anche se lo lasci in fase di importazione WordPress ti chiederà di assegnare gli articoli ad uno degli utenti presenti sul tuo blog e ignorerà questo campo.

Una volta fatte le modifiche salvare il file normalmente (non con codifica utf-8).

Bene ora basta avviare Python, da commandline:

C:\>cd \python25
C:\>Python25> python

Quando appare il prompt di benvenuto di Python dare i seguenti comandi:
>> from spb2wp import *
> createwxr()
>>> optimizewxr()

Bene, ora il file dovrebbe essere stato creato in “C:\Python25″ con il nome di spb2wp.xml. Non è detto che sia tutto perfetto, anzi è probabile il contrario, ma il file è modificabile con un editor di testo e contiene tutti i post e i commenti del vecchio blog.. Diciamo che con un buon editor di testo con un po’ di Search&Replace si possono correggere in una decina di minuti gli eventuali problemi rilevati. In particolare, cercare eventuali tag ?[;img] o [url=....] ancora presenti nel codice. E’ importante salvarlo con codifica utf-8.

Bene, una volta fatte le eventuali correzioni basta importarlo in WordPress e sperare !

Purtroppo lo script non è stato pensato per esportare un generico Simple Php Blog ma bensì per esportare solo il mio di blog :P , ci sono quindi delle cose particolari che potrebbero generare problemi su un altro blog (in particolare io ho sempre fatto l’encode degli & quando inserivo HTML puro, se non lo si è fatto bisogna rimuovere una riga di codice).

Non è pensato per esportare le entry statiche per quello bisogna fare a mano. Non ho modificato i vecchi link, ma è possibile creare un file index.php che faccia i giusti redirect 301 e che va messo nella home del vecchio blog (se i due blog sono installati nello stesso percorso bisogna aggiungere il codice all’index.php di WordPress). Per reindirizzare anche i commenti rinominare il file “index.php” in “comments.php” e caricarlo sul server. Non ho previsto un redirect delle pagine statiche (si sta prima a farlo a mano) nè delle categorie.

Se poi ti trovi bene e vedi che funziona anche a te ti posso dire come modificare i file di SPB in modo da generare una sitemap della morte (update odierno e aggiornamento a never) , ricordo che l’avevo fatta quando avevo traslocato da altervista, ma non mi ricordo di preciso come avevo fatto :-P .

Se ti dà qualche errore (il che è probabile) me lo segnali che provo a personalizzarti il codice.

Nota: il database deve essere vuoto per fare l’import del file perchè non sovvrascrive i vecchi post durante l’importazione (almeno mi semb

Ecco il blog su WordPress :-)

Dopo tanti ripensamenti mi sono finalmente deciso a cambiare piattaforma di blogging passando da Simple Php Blog a WordPress. Simple Php Blog è una piattaforma di blogging in flat file, è molto facile da configurare, ottima per utenti alle prime armi, insomma perfetta  per il sottoscritto alla sua prima esperienza di blogging. Purtroppo però, SPB è poco estendibile soggetto  a frequenti attacchi di spam. Era parecchio tempo che riflettevo sull’opportunità di fare il passaggio a WordPress, ma non riuscivo a trovare in rete un buon script per recuperare il database.

WordPress, al contrario di SPB, utilizza un database Mysql per il salvataggio dei dati, di cui non disponevo sull’hosting di altervista. Da qualche tempo sono passato su netsons, che attiva di default un database Mysql anche sugli account gratuiti, e ora finalmente riesco a esportare il blog su WordPress.

Potevo recuperare il database in due modi:

* scegliendo di importare il feed RSS globale degli articoli pubblicati, ma in questo modo si sarebbero persi tutti i commenti;
* utilizzare uno script in Ruby trovato con Google, ma, a mio avviso, avrei perso lo stesso qualcosa e comunque non mi andava di installare ed imparare ad usare Ruby.

Alla fine ho dato un’occhiata allo script in Ruby e ho creato uno script in Python (voi direte perchè non lo hai fatto in PHP ? ….perché di PHP ne capisco molto meno) per fare l’esportazione del mio vecchio blog in formato WXR (WordPress Extended RSS). Ho avuto qualche problema, ma alla fine la cosa non è stata difficile (se qualcuno è interessato posso spiegare a grandi linee il codice dello script utilizzato, che posso rendere disponibile a chiunque ne sia interessato :) . Purtroppo, c’è qualche problemino con qualche <br/> innestato qua e là che non permette la validazione di tutte le pagine del blog, ma tutto sommato credo di aver esportato decentemente l’archivio. Naturalmente devo dare una ricontrollata ad alcuni post “delicati” (a causa del BBCode e del codice HTML utilizzati) ma in linea di massima ci dovremmo essere :-) .

Quello che non sono riuscito a fare è trovare un modo intelligente per taggare gli articoli, e mi sono fra l’altro accorto che, per mia imperizia, le categorie erano sballate già nel vecchio blog. Se trovo un modo veloce per fare il tagging tramite una qualche query SQL al database proverò a risistemare tutto.

Per ora ho reindirizzato solo il feed RSS, se vedo che i vecchi articoli non hanno subito eccessive mutazioni faccio pure il redirect 301 e sposto tutto di qua. Il tema è il primo che ho trovato (insomma è il tema più usato dagli utenti di WordPress, ma non è pienamente compatibile con la versione che ho installato) ma mi riprometto di migliorarlo un po’, almeno dargli qualche colore diverso.

Ho installato qualche plugin che spero possa far contento qualcuno dei commentatori, visto che dovrebbero rendere molto più semplice seguire i commenti. Scusate ma è la prima volta che installo WordPress e non sono ancora molto pratico quindi dovete tenervi per un po’ lo stile di default del K2 e qualche frase non localizzata dei plugin.

Io non sono un fan del blogroll, non appena capisco come fare lo rimuoverò, per ora comunque ho messo qualche link dei blog che leggo maggiormente, ma mi è spiaciuto lasciarne fuori qualcuno di altrettanto interessante. Quando troverò tempo preparerò una pagina statica con un elenco più esteso di blog e feed ai quali sono iscritto.

Credo che prossimamente sarò impegnato a cercare di personalizzare un po’ ilnuovo blog e lascerò un po’ in secondo piano la pubblicazione di articoli, in ogni caso il tempo per scrivere qualcosina lo si trova sempre. Ah,ogni volta che si vuole fare qualcosa ci sono sempre una decina di complicazioni aggiuntive e impreviste che sembrano concentrarsi tutte nel momento meno opportuno, dal server di netsons che ieri non andava (il blog doveva essere pronto ieri sera), dalla connessione Adsl che in settimana andava a scatti, fino ad arrivare all’operazione di caricamento dei file via FTP che non ne voleva sapere di andare a buon fine :-P

Ed infine, se qualcuno vuole dare suggerimenti o consigli sui plugin da installare è il benvenuto :-) .

PS: per chi di solito commenta: preferite un tema chiaro o uno scuro ?