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 😉