Hace poco un suscriptor me indicó que los videos de YouTube que incrusto en los artículos, al final de la reproducción muestran videos de otros sitios. Esto se corrige agregando un parámetro a la url, pero claro hay muchos artículos que tenía que corregir.
Resultado Final
Anteriormente al terminar de reproducir un video incrustado se veían videos recomendados de otros canales.
Sin embargo ahora se muestran videos del canal DecodeCMS que si están relacionados con el sitio.
Generalidades
Para evitar mostrar contenido de otros canales al finalizar un video incrustado, sólo es necesario agregar rel=0 como parámetro de la url incrustada.
Por ejemplo:
src="https://www.youtube.com/embed/IZqdNUtNeoI/rel=0"
Código para corregir los videos incrustados
Si tienes muchos videos como parte de tus entradas y quieres agregar rel=0 a todos ellos, una forma práctica es usando los Hooks de WordPress, específicamente usaremos el Hook de filtro de contenido.
add_filter( 'the_content', 'dcms_change_embebed_youtube');
function dcms_change_embebed_youtube( $content ){
if ( ! is_singular('post') ) return $content;
$pattern = "/youtube\.com\/embed\/(((?!rel=0).)+?)\"/";
$substitution = "youtube.com/embed/$1/?rel=0\"";
$content = preg_replace($pattern, $substitution, $content);
return $content;
}
En el código anterior:
- Usamos el Hook the_content que hace referencia a la función dcms_change_embebed_youtube()
- Dentro de la función validamos que sólo tenga efecto en entradas de WordPress
- Usaremos una expresión regular para buscar el texto de YouTube y reemplazarlo
- Definimos el patrón (excluyendo si ya tiene agregado rel=0), y la sustitución y usamos la función preg_replace() de PHP
- $1 es lo que se encontró como parte de la expresión regular, a eso le agregamos rel=0
- Finalmente retornamos el contenido modificado
Conclusión
Como has podido ver, puedes usar los Hooks de WordPress para realizar correcciones en el contenido de tus entradas que de otra forma tendrías que haberlos realizado de manera manual.
¿Aún con dudas?, en el siguiente video se detallan los puntos anteriores.
La entrada Agregar rel=0 a videos YouTube de manera automática en WordPress es un artículo reciente del sitio DecodeCMS.
0 Commentaires