YouTube a Streamit
Un plugin de Wordpress que automatiza la conexión y la creación de episodios en Streamit.
Install
This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/lulubumps/yt-to-streamit/archive/refs/heads/main.zipPlugin de WordPress que importa automáticamente los videos de tus playlists de YouTube como episodios de Streamit, los deja dentro de su programa y temporada, y te avisa por correo cuando un programa llega al capítulo que definas (por ejemplo, el 13).
Proyecto independiente. No está afiliado ni respaldado por Iqonic ni por Streamit. Streamit es un producto comercial de sus autores; este repositorio no incluye su código.
Qué hace
- Un programa de Streamit = una playlist de YouTube. Cada video nuevo se crea como episodio, con título, descripción y miniatura (convertida a WebP si el servidor puede).
- Activa o desactiva programas con una palomita, o sincroniza uno solo a mano.
- Lee YouTube por su API oficial (recomendado) o por el feed RSS como respaldo, con reintentos.
- Menú propio YouTube a Streamit con cinco secciones: Programas sincronizados, Ajustes, Herramientas, Episodios importados y Verificación del sistema.
- Selector de programa con buscador y lista de programas paginada (pensado para muchos programas).
- Herramienta para reparar episodios que no quedaron enlazados a su programa.
Requisitos
- WordPress 5.8 o superior y PHP 7.4 o superior.
- Plugin Streamit 1.3.x activo (probado con la 1.3.9).
Instalación
- Descarga el ZIP
yt-to-streamit-x.y.z.zip(sección Releases). - En WordPress: Plugins → Añadir nuevo → Subir plugin y activa «YouTube a Streamit».
- Abre YouTube a Streamit en el menú lateral de WordPress.
Configuración rápida
- Ajustes: elige cómo cargas el video hoy (código embed o URL, igual que tus episodios actuales), tu correo de aviso y la frecuencia. Guarda.
- Programas sincronizados → + Agregar programa: busca y elige el programa de Streamit, pega la URL o el ID de su playlist y define el capítulo en que quieres el aviso.
- En la misma página, define Importar videos desde (evita traer todo el historial) y Estado al importar. Empieza en Borrador. Guardar cambios.
- Verificación del sistema → Verificar + prueba de creación: todo debería salir en verde.
- Presiona Sincronizar ahora, revisa un episodio en Streamit y, cuando se vea bien, cambia a Publicado.
La sincronización automática corre cada 12 horas por defecto; puedes cambiarla en Frecuencia de sincronización (30 min, 1 h, 6 h, 12 h o 24 h). Usa WP-Cron, que solo se dispara cuando alguien visita el sitio. Para importar al instante, usa Sincronizar ahora.
API key de YouTube (recomendada)
El feed RSS de YouTube falla de forma intermitente (responde 404 durante horas). Con una API key gratuita el plugin lee las playlists por la API oficial y deja el RSS de respaldo.
- En Google Cloud crea un proyecto y habilita YouTube Data API v3.
- Crea una clave de API y restríngela a esa API.
- Pégala en el panel, o mejor, defínela en
wp-config.phppara que no quede en la base de datos:
define( 'YTS_API_KEY', 'tu-clave' );
Si algo falla
| Síntoma | Qué significa |
|---|---|
HTTP 404 al leer la playlist |
Falla temporal del feed RSS de YouTube. Se reintenta solo; usa la API key para evitarlo. |
quota en el informe |
Se agotó la cuota diaria de la API (se reinicia a medianoche, hora del Pacífico de EE. UU.). |
| Video omitido por «fecha de inicio» | YouTube cuenta la fecha de publicación del video, no la de agregarlo a la playlist. Ajusta Importar videos desde. |
| Episodios que no aparecen en el programa | Botón Reparar enlaces. |
Más detalle en MANTENIMIENTO.md.
Seguridad
- Todas las acciones del panel exigen permiso de administrador y nonce (formularios POST).
- La API key no se muestra en el panel una vez guardada y puede vivir en
wp-config.php. - Los datos que vienen de YouTube (ID de video, títulos, descripciones) se validan y escapan antes de usarse.
- Al borrar el plugin se eliminan sus ajustes; los episodios importados se conservan.
Desarrollo
php tests/smoke-test.php # lógica del plugin, sin WordPress (70 comprobaciones)
npm install jsdom --no-save && node tests/panel-test.js # JavaScript del panel (24 comprobaciones, opcional)
Estructura y recetas para modificar el plugin: MANTENIMIENTO.md. Historial de cambios: CHANGELOG.md.
Licencia
GPL-2.0-or-later. Ver LICENSE.