Verhuis je blog zonder twee keer na te denken!

Het leven op de elektronische snelweg kan zwaar zijn: Koen Fillet was bijna een volledig jaar zijn kluts kwijt omdat de Leeskamer-blog van naam én URL was veranderd. Hij sprak deze ochtend zichzelf, Jan Coucke en de wereld dan ook enigszins vermanend toe;

“Verander je ouwe vertrouwde blog niet zomaar van naam en van adres. Denk twee keer na, want je lezers ben je kwijt.”

Hij heeft gelijk natuurlijk; door een ondoordachte verhuis kun je heel wat lezers rechtstreeks (rss-volgelingen of echte trouwe bezoekers) en onrechtstreeks (zoekrobotten en bezoekers die via zoekmachines op je site komen) verliezen.
Beter twee keer nadenken dus. Of gewoon verder lezen, dat zou U ook kunnen doen. Want om mijn bloggende medemens al dat dubbel gepeins te besparen, zal ik hier de truuken van de foor opsommen, zoals ik die gebruikte bij mijn verhuis van het wordpress.com-platform naar een eigen wordpress.org-installatie.
Op je oude blog zou je volgende dingen kunnen doen:

  • je verhuis ruim op voorhand aankondigen (met url natuurlijk).
  • Van de laatste blogpost maak je natuurlijk een duidelijke doorverwijzing naar je nieuwe blog, met link en al.
  • Je zorgt er dan voor dat die laatste tekst het enige zichtbare artikel is voor wie op de homepagina komt.
  • Laat je oude blog voor de rest gerust staan, maar kleed hem wel grondig uit:
    • Exporteer alle teksten (inclusief commentaar).
    • Laat in je (populaire) posts enkel de eerste paar zinnetjes staan en link voor het vervolg door naar je nieuwe blog.
    • Verwijder commentaren en zet de commentaar-optie uit.
    • Laat zoveel mogelijk interne links direct naar je nieuwe blog verwijzen.
  • Publiceer de rss-feed van je nieuwe blog op je oude blog.

Op je nieuwe blog ga je dan bijvoorbeeld op deze manier aan de slag:

  • Importeer alle blogposts (inclusief comments) van de oude versie.
  • Pas interne links in die geïmporteerde tekstjes aan om te voorkomen dat je lezers terug naar het verleden worden gekatapulteerd.
  • Publiceer de eerste dagen gerust een artikeltje meer, zodat je lezers zich direct thuis voelen.

Vraag voor de rest aan de eigenaars van sites waar je blog vermeld wordt om dat adres aan te passen. En niet onbelangrijk voor je rss-lezers tenslotte: gebruik feedburner om je feed te publiceren. Nu, direct, weken, maanden en jaren voordat je verhuist al. Het is een fantastische gratis dienst en op het moment van de waarheid moet je dan enkel je feedburner-instellingen aanpassen en al je rss-volgelingen verhuizen mee zonder dat ze daar zelf iets voor moeten doen.
Misschien een beetje neurotisch allemaal en “your mileage may vary“, maar in mijn geval werkte dat wel goed. Regelmatige lezers verhuisden dankzij de aangepaste feedburner-feed automatisch mee. Wie m’n blog op de gewone manier bezocht, ziet op m’n uitgeklede wordpress.com-blog dat ik verhuisd ben èn direct ook links naar mijn laatste posts op mijn nieuwe stek. Zoekrobotten worden via m’n oude site op allerlei manieren doorverwezen naar m’n nieuwe onderkomen en vinden daar direct ook inhoud om te indexeren. Zolang Google nog resultaten uit de oude blog toont (en dat zal nog een tijdje zo zijn), kunnen toevallige bezoekers daar nog proper landen om daar dan naar m’n nieuwe site doorverwezen te worden.
Dat was het zo ongeveer denk ik, veel meer valt daar niet over te vertellen. Succes met je verhuis!

Ssst, hier verhuist men!

Het is hier even net iets stiller, niet alleen omdat het op het werk momenteel druk is, maar ook omdat ik op mijn eigen VPS-serverken WordPress 2.3 aan het installeren ben. Alles draait ondertussen betrekkelijk vlot, heb een paar plugins geïnstalleerd, content overpompen is een stukje taart, maar ik vind “het perfecte theme” niet. Indigo staat hoog op mijn lijstje wegens mooi minimalistisch, maar die heeft het nog even moeilijk met de wordpress widgets in de sidebar.

indigo screenshot

Eerst de rest nog wat tweaken en dan zullen maar eens in de Indigo-code (meer bepaald sidebar.php) duiken zekerst?

WordPress automagisch upgraden (nu met nog slimmer hondje)

labrador puppyDe meeste nerds/ bloggers weten het ongetwijfeld al; wordpress.org bracht eergisteren versie 2.3 van de gelijknamige open source blogsoftware uit. Wat die nieuwe versie allemaal kan, hebben anderen al beschreven, ga gerust daar even lezen indien ge op zo’n dingen kickt. Via-via kwam ik echter op een pagina van wordpress zelf waarin werd beschreven hoe ge via subversion (ofte svn) bijna automatisch kon updaten. Omdat ik wel van een potje shell-scripten hou en omdat “bijna automatisch” net niet automatisch genoeg is, heb ik WPuppy.sh bij elkaar gekliederd.
Het beestje probeert samengevat het volgende te doen:

  • het haalt van de wordpress svn de pagina waar alle versies opgelijst staan en distilleert daaruit de laatste versie
  • het vergelijkt die versie met de versie die in een config-bestandje opgeslagen zit en vraagt of ge wilt upgraden
  • het upgrade via svn en opent de update.php van uw blog in lynx, zodat wordpress de laatste aanpassingen kan doen
  • het past de versie in het config-bestandje aan

WPuppy.sh hoort vanzelfsprekend in een linux-hok met shell-access en heeft naast bash oa ook lynx en svn nodig om te kunnen spelen. Bij testen heeft WPuppy.sh oa. succesvol een upgrade van WP 2.2 naar 2.3 op mijn Debian Etch machine gedaan, maar ik kan vanzelfsprekend geen garanties geven dat het jonge beest altijd en overal even zindelijk zal zijn 😉
Wie denkt iets met mijn nieuwe speelkameraadje te kunnen doen, moet:

  • WordPress een eerste keer manueel installeren met svn (zoals beschreven op de WP-pagina over svn)
  • WPuppy.sh afhalen in mijn kennel en in een mandje op zijn/ haar linux-gebaseerde server zetten
  • in dat bestand de waarde van variabelen blogdir en blogurl aanpassen
  • in hetzelfde directory een bestand aanmaken met de naam “wp-installedversion” en daarin de huidige versie opslaan in de juiste vorm (bv. “2.2”).

Als ge dat gedaan hebt, zout ge in principe elke upgrade moeten kunnen doen door WPuppy.sh er gewoon op los te laten. Kleine hondjes zijn leuk, toch?
Update: ik heb één en ander aangepast voor eigen gemak en zielerust en WPuppy.sh maakt nu eerst een backup van database en filesysteem en deactiveert daarna ook alle WP-plugins. Fouten allerhande zouden verder iets properder moeten worden opgevangen en gemeld. Maar van de weeromstuit heeft WPuppy.sh nu natuurlijk ook mysql, mysqldump, tar en gzip nodig om te kunnen blaffen. En dat het nu nog meer dan voordien spaghetti-code is, dat spreekt voor zich toch?

Stoute wordpress upgrade maakt posts van pages?

Outro_Spective had gisteren een probleempje met zijn upgrade naar de laatste versie van WordPress op animobrugge.be; alle pages waren plots posts.
De oplossing bleek gelukkig betrekkelijk eenvoudig: posts en pages worden beiden in de ‘wp_post’ tabel bijgehouden in de wordpress database. Als je van de verdwenen pages in kwestie het ‘post_type’ van ‘post’ naar ‘page’ verandert, is alles terug in orde. Volgend sql-statement doet dat in 1 klap:

UPDATE wp_posts SET post_type = ‘page’ WHERE ID IN (x,y,z)

met in de plaats van x,y en z de id`s (het nummer na p= of page_id= parameter in de url van je posts/ pages) van de posts die terug page moeten worden

Waarmee dat Jong Links Brugs geweld terug foutloos online staat en ze zich nu terug volop met de politiek kunnen bezighouden 🙂

Migratie-migraine

Met het opdoeken van de gratis typepad-gehoste telenetblogs moest ik op zoek naar een nieuwe blogwoonst. Alhoewel ik over een serverke op internet beschik, had ik weinig goesting om me met installatie en configuratie en onderhoud van de software bezig te houden. En zo kwam ik algauw bij de gratis wordpress.com-blogs uit. Bleef dan de kwestie van het importeren van mijn oude blogposts. De Typepad-blogs konden geëxporteerd worden, importeren was ‘a piece of cake’ (enkele html-tag-problemen daargelaten).
Waar net iets meer werk in kroop, was het importeren van mijn nog oudere posts uit een antieke nucleus 2-installatie. Niet eenvoudig (want in de nucleus-rss ontbrak heel wat en in de hosted wordpress kun je geen rss importeren). Maar volgende stappen hebben me uiteindelijk het verhoopte resultaat opgeleverd:

  • aanpassen nucleus-code om in de rss zowel ‘body’ en ‘more’ (samen) te tonen in de description-tag
  • aanpassen nucleus-code om in de rss de maximum lengte van de string in de description-tag te vergroten
  • opvragen en bewaren van de rss, de al via typepad geëxporteerde posts handmatig verwijderen
  • installeren en configureren van wordpress op mijn serverke (toch ja ..)
  • php.ini op mijn serverke aanpassen om file-uploads mogelijk te maken
  • aanpassen van rechten op filesysteem zodat wordpress zelf upload-directory kan aanmaken
  • de rss-import op mijn tijdelijke blog gebruiken om de nucleus-rss te importeren
  • de wordpress export-functie op mijn tijdelijke blog gebruiken om te exporteren
  • de wordpress-export gebruiken om in mijn wordpress.com-blog te importeren
  • en dan de tijdelijke blog op mijn serverke verwijderen en -nu ik er aan denk- de wijzigingen in php.ini ongedaan maken …

Maar we zijn er, al mijn blogposts staan nu proper op 1 plaats en ik voel me dus al een beetje thuis. Nu nog gelezen worden 😉