veebimigratsioon wordpressi peale

Veebi üleviimine olemasoleva sisuhalduse pealt WordPressi peale ei pea olema meeletu käsitöö – pigem võiks kogu sisu ühe hooga üle tuua. Ja kuivõrd just sai kolitud senine Manila-põhine www.tehnokratt.net (v.a foorumiose) üle siia WordPressi-põhise tehnokratt.net’i peale on värskelt meeles kõik see mis seotud veebimigratsiooniga.

Executive brief – kõik alljärgnev on kole raju tehnospiik, aga kui Sa oled mõelnud tõsta oma senise veebi WordPressi peale siis ma heameelega aitan ja rakendan kõike kolekeerulist :-) Kui minu abi ei sobi, siis lisa vähemalt protsessikirjeldus hankele/töökäsule – et vot nii tuleb teha või veel paremini…

Minu meetod on selline:

  • genereerin algse veebi andmebaasist WXR ehk WordPress eXtended RSSi (sama formaati tekitab WordPress ise ekspordi käigus); kolhoosi puhul häkkisin ümber ühe varasema MovableType jaoks tekstifaili eksportinud skripti, aga kui sisu SQL-baasis siis kasutan SQL2RSS skripti koos mõningaste täienduste (utf8 tugi, WP-spetsiifiline kuupäevaformaat ja veel nipet-näpet) ja WXR-spetsiifiliste formaadifailidega – ja mis WXRi ei mahu nt erinevates keeltes lehtede seosed läheb kaasa metadata-väljadena
  • saadud tekstifail on hea võimalus teha esimest normaliseerimist – peamiselt saidisiseste linkide osas, mille puhul ?id=123 enam ei toimi – aga kuna artiklite numeratsioon tuleb kenasti üle siis võib need lihtsalt ?page_id=123’ks ümber asendada (n+1 lisaparameetri eemaldamine eeldab regexi-võimelise searchiga tekstieditori, minul TextWrangler saab täitsa hakkama :-)
  • WXR WordPressi sisse – ja kui kõik plaanipäraselt kulges peaks asi juba täitsa veebi moodi välja nägema… kuigi reaalses elus on kindlasti vaja veel midagi putitada ja sageli on seda mõistlik teha mõnes eelmises etapis (miska pole mõtet esimesel katsel normaliseerimist liiga tõsiselt võtta, äkki tuleb naasta andmebaasitõmmise juurde)
  • vahel juhtub, et algses süsteemis on eraldi numeratsioonid uudiste ja artiklite jaoks – kui nii, siis panen WXRi metadatana kaasa algse numeratsiooni, saan WordPressi baasist teada vanade ja uute numbrite vastavuse ning tekitan sellest Exceli kaasabil kaks tekstifaili – SQL käsud mille saab lasta peale postituste sisule eesmärgiga panna toimima varasemad saidisisesed uudistelingid ehk ?uudis=123 -> ?p=123 ja ning .htaccess jaoks rewrite’d mis tegelevad väliste vana-uudise linkidega
  • kui on tegu mitme keelega, siis kasutan WordPressis WPML.org pluginat ja eeldusel, et olen taibanud keelte-seose metadatana kaasa panna on umbes 1 lause SQLi mis postitused kenasti kokku seob
  • piltide ja failide puhul on lihtsalt ümberliigutamine lihtne, vajadusel tulnuks WXRis muuta kataloogirada ning tekitada rida .htaccessi mis välislingid ümber suunab – aga juhul kui nende nimetamises peaks esinema olulist saasta (täpitähed-tühikud mis URLis kenad ei ole, sama fail mitu korda jne) siis tuleb jällegi appi Excel, milles teen ümbernimetamise ja genereerin lisaks SQL ja .htaccess ridadele ka batchfaili ümbernimetamiseks – ning saadud ilusate nimedega failid lähevad WordPressi meediana üles
  • kui algsetes postitustes on sees kõvasti tarbetut HTML-märgendust (Word jms), siis tegelen sellega kas WXRis (regex oskus abiks) või kasutan Tidy Up pluginat (üldiselt toimib, aga kohati annab alla – ei ole olnud aega debugeerida)
  • lisaks panen uuele veebile peale Redirection’i mille 404-logi näitab ära sisenevad URLid mis mingil põhjusel ikkagi ei toimi – ning kohendan .htaccess või lisan sealsamas kiire suunamise, et lgp külastaja tulevikus 404 asemel midagi sisukamat näeks. ühtlasi toimib see kvaliteedikontrollina.

Üldjoontes selline mõnus andmete masseerimise ülesanne, natuke automaagiline ja natuke tüütu. Eriti tüütu on esimest korda kõike avastada ja käima jooksta. Sest olgu öeldud, et WXR parser on tiba pirtsakas ja vahel kulub aega saamaks aru, et teise postituse mitte-importimine on otseses seoses ühe täiesti normaalse väljaga RSS-kanali päises… või et threaded comments’i toimimise lõpetab see, kui esimese kommentaari parent’iks on sattunud postitus mida kommenteeritakse.

Postitatud rubriiki wordpress märksõnaga , , , , , . Talleta püsiviide. Kommenteerimine ja trackback-viidete lisamine ei ole lubatud.

7 Kommentaarid