So, noch eins zum Thema Feeds und Darstellung...

Wie der RSS-Validator meint, ist es nicht so toll, wenn ein RSS-Feed als Content-Type: text/html ausgeliefert wird, der Feed ansich wäre zwar in Ordnung, aber manche User könnten Darstellungsprobleme bekommen, weil der Reader nicht so recht weiss, ob er nun nen RSS-Feed bekommt oder irgendein anderes html-Dokument.

Tja, doof nur, das bei Einsatz des WP-Cache Plugins genau das passiert: Der Feed wird nicht wie von WordPress vorgesehen mit Content-Type: text/xml ausgeliefert sondern, genau: Content-Type: text/html.

Feed ohne aktivierten Cache:

feed_validator_ok.gif

Feed mit aktiviertem Cache:

feed_validator_warning.gif

D'oh. Das wird dann wohl auch die Erklärung sein für die Darstellungsprobleme des Feeds im Thunderbird.

Man kann in WP-Cache bestimmte Dateien vom Caching ausschliessen, leider bringt das für das vorliegende Problem garnichts - auch wenn die Dateien wp-rss.php, wp-rss2.php und die dazugehörenden wp-comments-rss.php, wp-comments-rss2.php ausgeschlossen werden, wird der falsche Content-Type gesendet.

Wo ist eigentlich Scotty, wenn man ihn braucht?

[Nachtrag]

Nicht ganz Scotty, aber der hier kommt verdammt nah dran: How to prevent WP-Cache from changing a Feed's content-type...

[Nachtrag 2]

Der Fix aus dem ersten Nachtrag hat hier bei mir nicht funtkioniert. Aber den entscheidenden Hinweis auf die Stelle gegeben, an der das Problem entsteht:
In der Datei wp-cache-phase2.php, Zeile 230ff, wird gecheckt, ob schon ein Header mit "Content-Type" vorhanden ist. Falls nicht, dann wird ein Content-Type: text/html gesetzt.
Das passiert, obwohl in der Datei wp-rss2.php und wp-comments-rss2.php ein Content-type gesetzt wird...
weil "Content-type" und "Content-Type" sind halt nicht gleich, also versagt der check in der wp-cache-phase2.php.
Deshalb habe ich den Check mal auf die "Content-type" Schreibweise geändert, und nun geht es.