ATTENZIONE! L'articolo che stai leggendo ha oltre un anno di vita, alcuni degli argomenti trattati potrebbero non essere più validi.

Migrare il proprio blog da Splinder a WordPress 2.3.x

inserito in php, tecnologia da fullo @ 02-01-2008 00:43

splinder to wordpress importer
Qualche giorno fa, un losco individuo, mi ha chiesto di aggiornare un plugin per migrare blog da Splinder/Motime a WordPress. Ne è uscito un piccolo lavoro di riscrittura ed aggiornamento che pare, dai test fatti, funzionare discretamente.

Il fatto è che attualmente il plugin, anzi l'importer, necessita di un po' di test.

Quindi se avete intenzione di migrare il vostro blog da Splinder ad una installazione locale di WordPress (niente supporto diretto a WordPress.com, ma si può fare in altri modi) scaricatevi lo script in questione e copiatelo nella cartella wp-admin/import dell'installazione di WordPress sul vostro server.

Dopo di che aggiornate la template di Splinder facendo in modo che sia presente il seguente codice:

CODE:
  1. <Blogger>
  2. <div class='ss-permalink'>:PERMALINKS:<$BlogItemPermalink$>:ENDPERMALINKS:</div>
  3. <div class='ss-post-title'>:POSTTITLE:<$BlogItemTitle$>:ENDPOSTTITLE:</div>
  4. <div class='ss-post-text'>:TESTO:<$BlogItemBody$>:ENDTESTO:</div>
  5. <div class='ss-post-date'>:POSTDATA:<$BlogItemDateTime$>:ENDPOSTDATA:</div>
  6. <div class='ss-post-cats'>:POSTCATEG:<$BlogItemCategories$>:ENDPOSTCATEG:</div>
  7. <div class='ss-post-author'>:POSTAUTHOR:<$BlogItemAuthor$>:ENDPOSTAUTHOR:</div>
  8. <div class='ss-comments'>:POSTCOMMENT:<$BlogItemCommentList$>:ENDPOSTCOMMENT:</div>
  9. </Blogger>
  10. :BLOGPAGER:<$BlogPager$>:ENDBLOGPAGER:

Infine seguite gli stessi passi riguardanti la configurazione dell'account di Splinder che chiedeva anche Francesco Terenzani, cioè:

Attivare l’impaginazione del blog.
Configura > Impaginazione > Attiva la paginazione del blog: spuntate la voce “Sì”
Potete anche aumentare il numero di post per pagina, questo velocizzerà un po’ l’importazione. Con certe configurazioni di PHP aumentare il numero di post per pagina è indispensabile per evitare un timeout dello script.

Cambiare il formato dell’ora.
Configura > Impaginazione > Formato dell’ora: Selezionate il formato simile a questo “27/09/2006 17:25″

Adesso dal backend di WordPress andate in Manage->Import->Splinder/MoTime e seguite le istruzioni a video.

Ultime note riguardo a questa prima fase di test dell'importer:

  • per funzionare l'importer ha bisogno di PHP 5.2 con modulo CURL abilitato. Se non sapete se il vostro server lo supporta o meno, chiedetelo all' help-desk, non a me
  • mi piacerebbe ricevere segnalazioni di bug, non richieste di features (a meno che non siano indispensabili).
  • lo script tende, per blog molto corposi e con molti messaggi, ad ammazzare i server o ad andare in timeout... usatelo con cautela, in futuro valuterò di trovare soluzioni alternative per lo spider o almeno a risolvere problemi di timeout facendo ripartire la sessione da dove è stata interrotta.
  • è possibile, una volta importati i post da un blog di Splinder, cancellarli tutti in automatico. Quindi potete provare più volte la stessa importazione senza troppi problemi
  • non è presente un controllo per post doppi o senza titolo, se il post è doppio comparirà due volte se è senza titolo verrà inserito un titolo fittizio.
  • Infine, cosa più importante di tutte, non migro blog di chicchessia! Per questo genere di lavoro c'è già chi si impegna anima e corpo...

Qui trovate il file incriminato: splinder importer 0.6.7 e la sua vecchia versione 0.6.6.

UPDATE
Ho aggiornato l'importer (riscaricatelo) tra le novità introdotte:

  • controllo dei post già importati per evitare post doppi
  • migliorata l'importazione in caso di timeout
  • fatta un po' di pulizia del codice
  • cancellazione dei post importati e dei metadati salvati

UPDATE 2
Ulteriore aggiornamento (ora la versione è la 0.6), tra le novità:

  • possibilità di scaricare ogni singola pagina degli archivi indipendentemente
  • possibilità di analizzare il blog prima di iniziare i download (da fare per abilitare il primo punto)
  • ulteriore pulizia del codice e refactoring dei metodi di importazione
  • possibilità di limitare il numero di post da importare per ogni giro (per evitare il timeout)

UPDATE 3
Ulteriore aggiornamento (ora la versione è la 0.6.4), tra le novità:

  • migliore importazione dopo errori
  • fix per caratteri non utf8
  • addslash per titoli con apici (e mal interpretati da wp 2.3.2)

UPDATE 4
Ulteriore aggiornamento (ora la versione è la 0.6.5), tra le novità:

  • corretto il baco che non permetteva di salvare le opzioni

UPDATE 5
Ulteriore aggiornamento (ora la versione è la 0.6.6), tra le novità:

  • aggiungo strip_tags per i titoli di splinder

UPDATE 6
Ulteriore aggiornamento (ora la versione è la 0.6.7), tra le novità:

  • aggiornata la regexp per l'ultima pagina dell'archivio

ciuaz

Tag associati al post: Tags: , , , , ,

105 Commenti per 'Migrare il proprio blog da Splinder a WordPress 2.3.x'

  1. M1L says:

    Scusa se torno a commentare ma mi sono permesso di fare una modifica al php per risolvere il problema del quale avevo accennato (problema che causava la sostituzione di tutti i post di una stessa pagina con il primo post causando ripetizioni e post non importati)

    Il problema stava nella paginazione. Mi sono permesso di sostituire:

    # Last page
    preg_match("#(ultima|last page)#",$contents,$end);

    con

    # Last page
    preg_match("#(ultima \&raquo\;|last page)#",$contents,$end);

    (cioè splinder fa link all’ultima pagina scrivendo “ultima »”) In questo modo funziona tutto egregiamente.

  2. fullo says:

    ottimo aggiorno lo script con la patch

  3. fullo says:

    che versione hai provato? la 0.6.6 o 0.6.7? Url?

  4. Gatto Nero says:

    Non funzia. Nel senso che non mi fa caricare il plugin, vai a capire perché.
    Sia se vado dal backend di wordpress, uploadando il file .zip, che scompattando l’archivio e caricandolo nella directory dei plugin via FTP.
    Se torno nel backend a vedere la lista dei plugin, non me lo vede neanche. Nonostante sia sul server.

  5. Gatto Nero says:

    Se vabbè, ho letto bene ora. Scusa per il commento a cazzo :D

Lascia un commento

XHTML: Ti ricordo che puoi inserire questi tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>


phpDay 15.16 Maggio 2009 a Verona