Hacer que WordPress genere un archivo XML personalizado (no un mapa del sitio) que se actualice solo cuando se publique nuevo contenido
No estoy buscando un mapa del sitio, quiero crear un archivo XML al que pueda acceder un menú flash, pero no quiero generar el archivo XML cada vez que alguien visita una página, prefiero tener un XML estático para mayor velocidad. Y me gustaría que WordPress actualice el archivo cada vez que se publique nuevo contenido (no comentarios).
¿Hay algo integrado en WordPress que me permita hacer esto? ¿Algún plugin? Nuevamente, no quiero un mapa del sitio. Quiero una lista específica de elementos. Actualmente he estado usando plantillas de página con loops personalizados, pero tarda demasiado en generarse cada vez.

Echa un vistazo a la función export_wp.
Haz una copia de ella y conserva solo lo que quieras exportar, luego ejecuta esta función cada vez que se guarde una publicación: add_action('save_post', 'my_export_wp');
(Configúrala para que la función envíe su salida a un archivo xml)

Mmm... no estoy seguro si hay funciones específicas de WordPress para crear archivos. Existe wp_handle_upload, pero no estoy seguro de cómo la usarías en este contexto.
Dependiendo de la configuración de tu servidor, probablemente puedas usar fopen y fwrite para hacer esto.
Mantén el código que estás usando actualmente (con tus bucles personalizados... asumo que contienen el marcado XML que deseas), pero haz que construya la salida como una cadena. Luego guarda esa cadena en un archivo. Algo como:
// Construye el contenido del archivo como una cadena
$file_contents = '<?xml version="1.0" ?><yourroot><item>algún contenido</item></yourroot></xml>';
// Abre o crea un archivo (esto lo hace en el mismo directorio que el script)
$my_file = fopen("miarchivo.xml", "w");
// Escribe el contenido de la cadena en ese archivo
fwrite($my_file, $file_contents);
// Ciérralo
fclose($my_file);
Por supuesto, todo esto depende de la configuración y permisos de tu servidor. Tal vez alguien tenga una mejor solución que solo requiera funciones nativas de WordPress.

la parte de "hacer que construya la salida como una cadena" no estoy seguro. ¿pondría la URL como $file_contents = http://blog.com/sitetemplate

¿cómo haría para que ese archivo se llamara cada vez que alguien publicara algo?

¡ah! tengo una respuesta para eso. Ahora mi única pregunta es, ¿hay alguna manera de establecer la ruta de guardado? para poder elegir el directorio donde se guarda?

Claro. fopen debería poder aceptar una ruta local completa (algo como var/www/html/tucarpetadesitio/otracarpeta/tuarchivo.xml). Por supuesto, esto dependerá de tener los permisos de escritura correctos en esa carpeta.

puedes hacer esto con una función llamada: file_put_contents(); - http://php.net/manual/en/function.file-put-contents.php
