Wavecast Radio

Introducción a los Feeds RSS de Wavecast

Wavecast Demo · S1E1 ·

Este episodio demuestra cómo Wavecast genera automáticamente feeds RSS de podcasts compatibles con iTunes cuando configuras [params.podcast] en tu archivo de configuración del sitio Hugo.

Cómo Funciona

Wavecast incluye layouts/_default/rss.xml, una plantilla única que maneja tanto blogs estándar como feeds de podcasts. En el momento de la construcción, la plantilla verifica tu configuración [params.podcast]:

Reglas de detección:

CondiciónComportamiento
[params.podcast] tiene author, image o descriptionRenderiza un feed RSS completo de podcast iTunes (con namespace itunes:, categorías, propietario, artwork)
[params.podcast] falta o está vacíoRenderiza un feed RSS plain 2.0 adecuado para blogs
La página tiene podcast.src en su front matterIncluido como <item> con un elemento <enclosure>
La página no tiene podcast.srcOmitido completamente (no es un episodio de podcast)

No hay ningún interruptor o bandera que configurar. Si tu configuración de sitio define metadatos de podcast, obtienes un feed de podcast. Si no los define, obtienes un feed de blog. Ambos funcionan desde la misma plantilla única.

Los episodios con archivos de audio locales (ej. src: "audio/episode.mp3") tienen el tamaño del archivo <enclosure> auto-resuelto mediante los recursos de Hugo. Las URLs remotas usan por defecto length="0", que es RSS válido y aceptado por todos los directorios de podcasts principales.

Front Matter del Episodio

Todos los campos específicos de iTunes viven bajo la clave podcast: en el YAML front matter de tu episodio:

podcast:
  src: "https://example.com/audio/ep42.mp3"   # required
  type: "audio/mpeg"                           # MIME type
  duration: "00:45:00"                         # HH:MM:SS or seconds
  season: 2                                    # season number
  episode: 42                                  # episode number
  explicit: false                              # "true" or "false"
  author: "Guest Host"                         # overrides site-level
  guid: "unique-ep-42"                         # falls back to permalink
  episodeType: "full"                          # full|trailer|bonus
  subtitle: "A short episode teaser"           # max 255 chars
  summary: "Full episode description"          # max 4000 chars

Los campos estándar de Hugo (title, date, tags, summary) se extraen del front matter regular automáticamente.

Configuración del Canal

Los metadatos de podcast a nivel de sitio van en tu hugo.toml:

[params.podcast]
  author = "Your Name"
  image  = "/podcast-cover.jpg"   # min 1400x1400px recommended
  description = "A weekly show about open-source."
  explicit = false
  type     = "episodic"           # "episodic" or "serial"
  owner_name  = "Your Name"
  owner_email = "you@example.com"

  [[params.podcast.categories]]
    category = "Technology"

Validando el Feed

Una vez que tu sitio esté en vivo, valida tu feed:

  1. Visita validator.w3.org/feed
  2. Ingresa la URL del feed de tu sitio (generalmente /index.xml)
  3. Corrige cualquier advertencia antes de enviar a los directorios

El feed está listo para Apple Podcasts, Spotify, Google Podcasts, y cualquier aplicación de podcasts compatible con RSS.

Notas del Episodio

Episodio de Wavecast RSS Demo. Usado con atribución.