Otro detalle con el uso Planet es su uso de UTF-8 en el tratamiento de los feeds.

Planet recupera los feeds, determina si son iso o utf y lugo convierte todo a unicode. Luego la generación de la página es también pensando en unicode. Por esto, los templates y configuración también deben estar en unicode (si es que contienen carácteres «extraños») y el template debe indicar que se esta utilizando utf-8.

Esto, a traves del encabezado xml (de utilizar xhtml) y en Content-type mediante un meta.

El xml:

<?xml version="1.0" encoding="utf-8" ?>

El meta:

<meta http-equiv="Content-Type" content=
  "text/html; charset=utf-8" />

Pero mis problemas con unicode no acabaron allí. Como apache le continuaba indicando en la cabecera que el encoding era iso-8859-1 (AddDefaultCharset está seteado en on) fue necesario indicar que enviara la salida en unicode mediante:

AddDefaultCharset utf-8

Dentro de un .htaccess si el Override lo permite o dentro del httpd.conf

Y tan tan!, nuestros planetarios ahora si que comprenden todos los encodings estandarizando mediante unicode todas las salidas.

Otro tip sobre unicode. Si estás trabajando en iso-8859-1 y deseas convertir tus archivos de texto (templates y configuración) a unicode, utiliza iconv(1) (parte de libc6, asi que deberías tenerlo instalado).

[email protected]:~$ iconv -t utf8 < index.html.tmpl > \r
> lala.html.tmpl
[email protected]:~$ mv lala.html.tmpl index.html.tmpl

Y listo, quedarán convertidos a utf-8.