=== Strimy Video === Contributors: strimy Tags: video, embed, oembed, streaming, shortcode Requires at least: 5.0 Tested up to: 6.9 Requires PHP: 8.0 Stable tag: 1.2.8 License: GPL-2.0+ License URI: http://www.gnu.org/licenses/gpl-2.0.txt Integra videos de STRIMY en WordPress mediante oEmbed y shortcodes personalizados. == Description == Strimy es un plugin que permite integrar fácilmente videos de la plataforma STRIMY en tu sitio WordPress. Con soporte completo para oEmbed, shortcodes y bloques de Gutenberg. = Características principales = * **oEmbed automático**: Simplemente pega la URL del video y se insertará automáticamente * **Shortcode personalizable**: Control total sobre la apariencia y comportamiento * **Bloque de Gutenberg**: Integración nativa con el editor de bloques * **Widget de Elementor**: Integración completa con Elementor Page Builder * **Importador de videos**: Importa y sincroniza videos desde tu cuenta de STRIMY * **Compatibilidad universal con temas**: Sistema avanzado de plantillas que funciona con cualquier tema de WordPress * **Diseño moderno de videos**: Layout profesional con metadatos, categorías y diseño responsive * **Personalización de plantillas**: Integración fácil con temas mediante sistema de fallback * **Reproducción automática**: Control opcional de autoplay * **Responsive**: Los videos se adaptan automáticamente a cualquier dispositivo = Formas de usar = **0. Importador de videos** Ve a **Strimy Video > Importar** para buscar, importar y sincronizar videos desde tu cuenta de STRIMY. **1. oEmbed automático** Simplemente pega la URL de tu video en una línea separada: `https://strimy.pro/v/889542830943` **2. Shortcode** Usa el shortcode [strimy] con opciones personalizables: `[strimy id="889542830943"]` **3. Bloque de Gutenberg** Busca "Strimy Video" en el editor de bloques y configura visualmente **4. Widget de Elementor** Si tienes Elementor instalado, encontrarás el widget "Strimy Video" en la categoría General con controles avanzados para personalización completa. = Opciones del shortcode = * `id` - ID del video (requerido) * `autoplay` - Reproducción automática (true, false) = Aspect Ratio Automático = El plugin calcula automáticamente la altura del reproductor manteniendo la proporción 16:9 cuando: * No especificas el parámetro `height` * El ancho es un valor fijo (ej: 800px) * El modo responsive está activado Ejemplos: * `[strimy id="889542830943" width="800px"]` - Altura calculada automáticamente (450px) * `[strimy id="889542830943"]` - Totalmente responsive con proporción 16:9 = Configuración = Ve a **Ajustes > Strimy** para configurar: * Clave API (requerida para importar y acceder a videos privados) * Configuración de reproducción automática = Importador de videos = El plugin incluye un potente importador que te permite: * Buscar videos en tu cuenta de STRIMY * Importar videos como entradas personalizadas en WordPress * Sincronizar videos importados con la fuente original * Gestionar metadatos como título, descripción, duración y vistas * Organizar videos con categorías y etiquetas = Compatibilidad con temas = El plugin incluye un sistema avanzado de plantillas que garantiza compatibilidad perfecta con cualquier tema de WordPress: * **Sistema de fallback universal**: Funciona automáticamente con cualquier tema sin configuración * **Personalización por tema**: Copia las plantillas a tu carpeta de tema para control completo * **Layout moderno de videos**: Diseño profesional con enfoque player-first * **Diseño responsive**: Optimizado para escritorio, tablet y móviles * **Ruta de plantilla**: `wp-content/themes/tu-tema/strimy/single-strimy_video.php` El plugin usará automáticamente la plantilla personalizada de tu tema si está disponible, o utilizará la plantilla responsive integrada como fallback. == Installation == 1. Sube el plugin a la carpeta `/wp-content/plugins/strimy-video/` 2. Activa el plugin a través del menú 'Plugins' en WordPress 3. Ve a **Ajustes > Strimy** para configurar las opciones 4. ¡Comienza a insertar videos de STRIMY! = Instalación automática = 1. Ve a **Plugins > Añadir nuevo** 2. Busca "Strimy" 3. Instala y activa el plugin 4. Configura las opciones en **Ajustes > Strimy** == Frequently Asked Questions == = ¿Los videos son responsive? = Sí, todos los videos se adaptan automáticamente al tamaño de la pantalla y al contenedor donde se insertan. = ¿Funciona con el editor clásico? = Sí, el plugin es compatible tanto con el editor de bloques (Gutenberg) como con el editor clásico de WordPress. = ¿Puedo usar múltiples videos en la misma página? = Por supuesto, puedes insertar tantos videos como necesites en una sola página o entrada. = ¿El plugin afecta la velocidad de mi sitio? = No, el plugin es muy ligero y los videos se cargan de forma asíncrona sin afectar el rendimiento de tu sitio. = ¿Cómo personalizo la visualización de videos para mi tema? = El plugin incluye un sistema universal de plantillas. Para personalizar: 1. Crea la carpeta: `wp-content/themes/tu-tema/strimy/` 2. Copia: `single-strimy_video.php` desde la carpeta templates del plugin 3. Modifica el archivo copiado para que coincida con el diseño de tu tema 4. El plugin usará automáticamente tu plantilla personalizada = ¿Funciona con cualquier tema de WordPress? = ¡Sí! El plugin incluye un sistema avanzado de Template Loader que garantiza compatibilidad con cualquier tema de WordPress, incluyendo los populares como Astra, OceanWP, GeneratePress y temas personalizados. == Changelog == = 1.2.8 = * CORREGIDO: Cumplimiento de estándares de código WordPress (escaping, sanitización, i18n) * CORREGIDO: Reemplazado parse_url() con wp_parse_url() * CORREGIDO: Añadido wp_unslash() antes de sanitizar variables $_POST * CORREGIDO: Funciones de impresión inseguras reemplazadas con esc_html_e() y esc_html__() * CORREGIDO: Añadidos comentarios translators faltantes para cadenas con marcadores * CORREGIDO: Consultas directas a base de datos marcadas con comentarios phpcs:ignore * CORREGIDO: Cláusula SQL IN ahora usa $wpdb->prepare() con marcadores de posición * CORREGIDO: Añadida verificación ABSPATH en archivos de plantilla * CORREGIDO: Variables globales prefijadas en archivos de plantilla * CORREGIDO: Reemplazado unlink() con wp_delete_file() y rmdir() con WP_Filesystem * CORREGIDO: Añadido escaping wp_kses_post() para salida HTML en avisos de admin = 1.2.4 = * CORRECCIÓN: Corregido error crítico de JavaScript en el handler del widget de Elementor (this.onElementChange is not a function) * CORRECCIÓN: Corregida compatibilidad con Elementor 3.35.6+ usando la API moderna de registro de handlers * CORRECCIÓN: Corregida la expresión regular de extracción de ID de video para manejar URLs con sufijo /embed * CORRECCIÓN: Evitado que 'embed' se capture como ID de video válido causando errores 404 * MEJORA: Añadida cadena de fallback para registro de handlers de Elementor (attachHandler > addHandler > directo) = 1.2.3 = * CORRECCIÓN: Corregida estructura HTML rota en la página del importador que causaba que el footer de WordPress se renderizara dentro del grid de videos * CORRECCIÓN: Los botones de paginación (Anterior/Siguiente) ahora funcionan correctamente en el importador de videos * CORRECCIÓN: El estado de paginación se actualiza tras cada carga mostrando "Página X de Y" * CORRECCIÓN: "Seleccionar todos" ahora omite correctamente los videos ya importados (deshabilitados) * MEJORA: Eliminados todos los console.log de depuración del JavaScript del importador = 1.2.2 = * SEGURIDAD: Añadida verificación de permisos (current_user_can) en todos los handlers AJAX * SEGURIDAD: Sanitizados todos los valores de nonce en $_POST con sanitize_text_field() y wp_unslash() * SEGURIDAD: Añadido sanitize_callback a todas las llamadas register_setting() * SEGURIDAD: Eliminado endpoint AJAX de depuración (ajax_debug_import) del código de producción * SEGURIDAD: Sanitizados los superglobales $_POST en la limpieza de caché de la página de opciones * CORRECCIÓN: Eliminadas referencias al dominio de desarrollo (strimy.test) del código de producción * CORRECCIÓN: Eliminados registros duplicados de embed handler * CORRECCIÓN: Eliminada referencia a archivo inexistente strimy-elementor-register.php * CORRECCIÓN: Corregido uso de _e() dentro de cadenas JavaScript (ahora usa esc_js con __()) * CORRECCIÓN: Corregido cache busting usando time() reemplazado por filemtime() para caché correcto del navegador * CORRECCIÓN: Corregidos índices de coincidencia del regex del embed handler tras simplificación del patrón * MEJORA: JavaScript inline del metabox movido a archivo separado encolado (strimy-metabox-sync.js) * MEJORA: Añadida protección ABSPATH a class-strimy-shortcodes.php * MEJORA: Eliminado uso de extract() en template loader para cumplir estándares de codificación WordPress * MEJORA: Eliminado print_r() de llamadas error_log para prevenir filtración de datos sensibles * NUEVO: Añadido archivo LICENSE (GPL v2) para cumplimiento del repositorio WordPress.org * NUEVO: Añadido archivo .gitignore = 1.2.1 = * CORRECCIÓN: Transformación del bloque Gutenberg usaba nombre incorrecto (`strimy/video-block` en vez de `strimy/video`) * CORRECCIÓN: oEmbed ahora respeta el aspect ratio del servidor en vez de forzar 16:9 para todos los videos * CORRECCIÓN: Eliminadas reglas CSS que forzaban `aspect-ratio: 16/9` en embeds de Gutenberg, rompiendo 21:9, 9:16, etc. * CORRECCIÓN: El shortcode ahora obtiene el aspect ratio desde el endpoint oEmbed de STRIMY cuando el video no está importado como CPT * CORRECCIÓN: La limpieza de caché oEmbed ahora busca correctamente en `meta_value` en vez de `meta_key` * NUEVO: La caché oEmbed se limpia automáticamente al actualizar la versión del plugin * NUEVO: Aspect ratio del endpoint oEmbed cacheado via transients (24h) para rendimiento * MEJORADO: Soporte de video vertical (9:16) con max-width y centrado en Elementor, shortcode y templates = 1.2.0 = * COMPATIBILIDAD: Actualizado para WordPress 6.9 y Elementor 3.28+ * COMPATIBILIDAD: Versión mínima de PHP elevada a 8.0 * COMPATIBILIDAD: Versión mínima de Elementor elevada a 3.5.0 * CORRECCIÓN: Eliminadas llamadas deprecadas a `current_time('timestamp')` (deprecado desde WP 5.3) * CORRECCIÓN: Eliminado registro duplicado del shortcode que podía causar conflictos * CORRECCIÓN: Eliminado `sslverify => false` en llamadas a la API para mayor seguridad * RENDIMIENTO: Limpieza de llamadas excesivas a `error_log()` en producción (ahora solo activas con WP_DEBUG) * CORRECCIÓN: La versión del CSS frontend ahora usa la versión dinámica del plugin en lugar de un valor fijo * SEGURIDAD: Todo el logging de depuración ahora protegido correctamente con la constante WP_DEBUG = 1.1.6 = * NUEVO: Soporte completo para aspect ratios dinámicos desde la API de STRIMY * NUEVO: El plugin ahora detecta y aplica automáticamente el aspect ratio de cada video (16:9, 21:9, 9:16, 1:1, etc.) * NUEVO: Guardado de aspect_ratio al importar videos desde la API * MEJORADO: Widget de Elementor adapta automáticamente el aspect ratio del video * MEJORADO: Shortcode [strimy] usa aspect ratio dinámico del video importado * MEJORADO: Template single-strimy_video.php con soporte para aspect ratios variables * MEJORADO: Reproductor Plyr embebido se reescala según aspect ratio del video * MEJORADO: Compatibilidad con formatos verticales (9:16), cuadrados (1:1) y ultra-wide (21:9) = 1.1.5 = * CORREGIDO: Widget de Elementor se desbordaba en móviles cuando estaba en contenedores con otros elementos * CORREGIDO: Aplicada solución oficial de Elementor con overflow: hidden en todos los niveles del widget * MEJORADO: Responsive design mejorado para móviles pequeños (480px y menor) * MEJORADO: Compatibilidad con contenedores Flexbox y Grid de Elementor * MEJORADO: Fallback para navegadores sin soporte CSS :has() = 1.1.4 = * CORREGIDO: Imposibilidad de cambiar plantillas de Elementor en videos de STRIMY * NUEVO: Soporte completo para plantillas Canvas y Full Width de Elementor * NUEVO: Añadido soporte 'page-attributes' al Custom Post Type de videos * MEJORADO: Integración completa con sistema de documentos de Elementor * MEJORADO: Videos de STRIMY ahora se comportan como páginas en Elementor = 1.1.3 = * CORREGIDO: Widget de Elementor no aparecía en el panel de elementos * CORREGIDO: Categoría de widget cambiada de 'media' (inexistente) a 'basic' * MEJORADO: Sistema de depuración detallado para integración con Elementor * MEJORADO: Notificaciones de admin para confirmar registro exitoso del widget * ACTUALIZADO: Documentación según estándares actuales de Elementor 2024 = 1.1.2 = * CORREGIDO: Problemas de layout del importador de videos con ancho del postbox * CORREGIDO: Conflictos CSS en la interfaz del importador * MEJORADO: Cache busting para archivos CSS usando tiempo de modificación del archivo * MEJORADO: Inyección de CSS inline para estilos críticos del importador * MEJORADO: Diseño responsive para controles del importador = 1.1.1 = * NUEVO: Sistema Template Loader universal para compatibilidad con temas * NUEVO: Diseño moderno de visualización de videos con reproductor primero * NUEVO: Visualización profesional de metadatos con iconos y estadísticas * NUEVO: Sistema avanzado de personalización de temas con fallback * NUEVO: Diseño responsive optimizado para todos los dispositivos * MEJORADO: Estructura de plantillas con HTML5 semántico y accesibilidad * MEJORADO: Estilos CSS con patrones de diseño modernos * MEJORADO: Documentación e ejemplos de integración con temas = 1.1.0 = * Añadido importador de videos desde STRIMY * Nuevo tipo de contenido personalizado para videos * Funcionalidad de sincronización de videos * Metaboxes para gestión de videos * Taxonomías para categorías y etiquetas de videos * Integración con Elementor para videos importados * Mejoras de rendimiento y estabilidad = 1.0.0 = * Lanzamiento inicial * Soporte completo para oEmbed * Shortcode [strimy] con opciones personalizables * Bloque de Gutenberg nativo * Panel de configuración en el admin * Soporte para temas claro y oscuro * Integración opcional con API de STRIMY * Diseño completamente responsive == Upgrade Notice == = 1.1.1 = Actualización importante con compatibilidad universal de temas y visualización moderna de videos. Actualización recomendada para mejor integración con temas y experiencia de usuario. = 1.1.0 = Nueva versión con importador de videos y tipo de contenido personalizado. Actualiza para acceder a estas nuevas funcionalidades. = 1.0.0 = Primera versión del plugin Strimy. Instala para comenzar a integrar videos de STRIMY en tu sitio WordPress. == Developer Notes == = Hooks disponibles = El plugin proporciona varios hooks para desarrolladores: **Filtros:** * `strimy_oembed_default_width` - Modificar el ancho por defecto * `strimy_oembed_default_height` - Modificar el alto por defecto * `strimy_oembed_iframe_attributes` - Personalizar atributos del iframe * `strimy_oembed_container_class` - Añadir clases CSS al contenedor **Acciones:** * `strimy_oembed_before_render` - Antes de renderizar el video * `strimy_oembed_after_render` - Después de renderizar el video == Support == Para soporte técnico, visita: * [Centro de Soporte STRIMY](https://strimy.pro/support) * [Documentación del Plugin](https://strimy.pro/oembed-wordpress) == Privacy Policy == Este plugin no recopila ni almacena datos personales de los usuarios. Los videos se cargan directamente desde los servidores de STRIMY y están sujetos a la política de privacidad de STRIMY. == Credits == Desarrollado por el equipo de STRIMY. Iconos por [Dashicons](https://developer.wordpress.org/resource/dashicons/).