WordPress 2.7 & bug

De nieuwe WordPress is uit! Al een tijdje, maar nu heb ik er even mee kunnen werken en kan ik er wat zinnigs over vertellen. Het werkt fijn!

WordPress 2.7 kwam na WordPress 2.6.5 en brengt inderdaad wel wat veranderingen mee. Vandaar dat het waarschijnlijk een .7 is geworden na de .6.x. Een grote verandering zijn is de achterkant van WordPress, en is een heel nieuw admin gedeelte gekomen. Waar vroeger alles menu’s verticaal bereikbaar waren staan ze nu in een kolom in het linker gedeelte van de pagina. Het Admin gedeelte kan je ook veel meer naar eigen wens aanpassen, je kan bepaalde zaken naar een andere plekken slepen.

Helaas kent een nieuwe systemen ook bugs, in principe werkt alles feilloos. Ik heb bijvoorbeeld de volgende plug-ins probleemloos draaien;

  • Akismet 2.2.3
  • GeneralStats 0.80
  • Google XML Sitemaps 3.1.0.1
  • HeadSpace2 3.6.4
  • Recently Updated Posts 0.3
  • StatPress Reloaded 1.4.11
  • UMapper 2.2.9
  • WordPress.com Stats 1.3.5
  • WPtouch iPhone Theme 1.5

Maar als ik een post wil uitstellen, dus pas publiceren over 4 dagen, dan werkt het niet. Als de tijd aanbreekt dat hij gepubliceerd moet worden dan geeft hij een error “missed schedule”. Er zijn een aantal forum-posts over; Scheduled Posts not Published & Missed Schedule. Ik geloof dat met een update naar 2.7.1 het probleem over zal zijn, maar dan moet ie nog wel uitgebracht worden.

Tot die tijd heb ik een oplossing voor mezelf gemaakt. Als je deze SQL statement namelijk op de database uitvoert waar je blog op zit, dan worden alle posts alsnog ge-update naar de “publish” status. Een work-around, maar iets is beter dan niets.

UPDATE `wp_posts`
SET `post_status`=’publish
WHERE `post_status`=’future
AND `post_date_gmt` < NOW()

Wat deze doet is de wp_post-tabel updaten, het veld post_status wordt naar ‘publish’ gezet waar deze nog gepland is (future) en de post datum in het verleden ligt. Als je dit in een PHP bestand zet kan je het eventueel oproepen op afstand, zonder directe toegang tot je database.