Donnerstag, 24. Oktober 2013
[*]

Dieses WordPress.com-RSS-Problem

, 22:44

Die IronBlogger funktionieren nur mit RSS-Feeds (achwas, Blogs funktionieren nur mit RSS-Feeds). Leider funktionieren genau die im Moment bei einem der größten Bloganbieter nicht besonders zuverlässig. Bereits im September schrieb ich daher per Rundmail an die Blogger:

in den letzten Wochen gab es in der Auswertung der Iron Blogger immer
wieder Probleme mit Blogs, die bei WordPress.com gehostet sind: die
geschriebenen Artikel erscheinen dort im Moment oft mehrere Tage lang
nicht in den RSS-Feeds der Blogs. Die Blogger werden dann für faul
erklärt, obwohl sie doch fleißig und eisern gebloggt haben.

Daher bitte ich Euch: abonniert alle Eure eigenen Blogs im RSS-Reader
und überwacht, ob Eure Artikel auch dort erscheinen.i

Ich kann nicht an jedem Sonntagabend alle 41 WP.com-Blogs von Hand
mit ihren jeweiligwn Feeds vergleichen, aber wenn Ihr Euch bei
Unstimmigkeiten meldet, dann kann ich die Artikel „von Hand“ in den
Bot eintragen.

Das Problem hat sich seitdem nicht gebessert. Immer wieder sind wechselnde Blogs betroffen. Aktuell trifft es Bambiniläufer am härtesten; der letzte im Feed eingetragene Artikel stammt im Moment vom 5. Oktober 2013 (seitdem sind drei weitere Artikel erschienen). Bei manchen Blogs funktioniert die Umstellung auf den Atom-Feed, aber auch das ist kein Allheilmittel (der letzte Artikel im Atom-Feed des Bambiniläufer-Blogs ist vom 16. Juli 2013).

Wie könnte man das Problem umgehen? Unterstützen WordPress.com-Blogs einen eigenen Ping-Service? Oder so etwas wie PubSubHubbub?

Donnerstag, 7. Januar 2010
[*]

WordPress, MySQL und unechtes UTF-8

, 22:20

Schonmal eine WordPress-Installation auf eine neue MySQL-Version umgezogen? Gerade wenn man von Version 4.x auf Version 5.x wechselt, dann stehen anschließend oft in den alten Artikeln Worte wie „heißt“ oder „größere“. Das liegt daran, dass WordPress irgendwann in der Vergangenheit (war das Version 2.3?) seine Datenhaltung auf UTF-8 umgestellt hat, ältere MySQL-Versionen aber noch keine saubere Zeichensatzunterstützung auf Tabellen- und Feldebene boten. Will man das reparieren, so muss man der Datenbank „verraten“, mit welcher Zeichencodierung die Daten in den Tabellenspalten gespeichert sind. Dazu habe ich das folgende Skript geschrieben, das von allen betroffenen Feldern die Zeichencodierung erst entfernt, um sie dann korrekt zu setzen:

alter table wp_comments change comment_author comment_author tinyblob;
alter table wp_comments change comment_author comment_author tinytext
            character set utf8;
alter table wp_comments change comment_content comment_content blob;
alter table wp_comments change comment_content comment_content text
            character set utf8;
alter table wp_links change link_name link_name varbinary(255);
alter table wp_links change link_name link_name varchar(255) character set utf8;
alter table wp_links change link_description link_description varbinary(255);
alter table wp_links change link_description link_description varchar(255)
            character set utf8;
alter table wp_links change link_notes link_notes mediumblob;
alter table wp_links change link_notes link_notes mediumtext character set utf8;
alter table wp_options change option_value option_value longblob;
alter table wp_options change option_value option_value longtext character set utf8;
alter table wp_posts change post_content post_content longblob;
alter table wp_posts change post_content post_content longtext character set utf8;
alter table wp_posts change post_title post_title blob;
alter table wp_posts change post_title post_title text character set utf8;
alter table wp_posts change post_excerpt post_excerpt blob;
alter table wp_posts change post_excerpt post_excerpt text character set utf8;
alter table wp_posts change post_content_filtered post_content_filtered blob;
alter table wp_posts change post_content_filtered post_content_filtered text
            character set utf8;
alter table wp_term_taxonomy change description description longblob;
alter table wp_term_taxonomy change description description longtext
            character set utf8;
alter table wp_terms change name name varbinary(200);
alter table wp_terms change name name varchar(200) character set utf8;
alter table wp_usermeta change meta_value meta_value longblob;
alter table wp_usermeta change meta_value meta_value longtext character set utf8;

Vielleicht hilft es ja jemandem…