La posibilidad de insertar contenido multimedia sin necesidad de copiar y pegar scripts o iframes es una auténtica mejora de WordPress, especialmente si usas el editor visual principalmente, o si quieres que solo se use el editor visual. Y es que con la característica de soporte nativo de oEmbed en WordPress podemos insertar casi de todo solo pegando la URL donde está el contenido en el editor, tal cual.
Para ello, en los ajustes de medios del escritorio de WordPress veías esto …
¡Pero desde WordPress 3.5 esos ajustes han desaparecido!
¿Por qué?. Pues no solo viene activa por defecto la opción en WordPress 3.5 sino que no puedes ajustar el ancho o alto máximo de los objetos incrustados, y WordPress «supondrá» que tu tema activo tiene definido un ancho de contenido, al que ajustará el ancho de los incrustados, ajustando la altura máxima a 1,5 veces el alto. La decisión es básicamente por simplificar, no sé si porque alguien está decidiendo que WordPress tiene demasiados ajustes, pero bueno, eso o hablamos otro día.
Entonces ¿qué pasa si mi tema WordPress no tiene definido un ancho de contenido?, pues que el contenido se saldrá del bloque de contenido, quedando bastante fea la cosa, algo muy común por ejemplo con vídeos panorámicos de YouTube y similares.
Si así fuera, afortunadamente, tiene fácil solución, pues solo tienes que añadir esta línea de código al archivo functions.php
de tu tema activo:
//Definir ancho de contenido if ( ! isset( $content_width ) ) $content_width = 550;
(Nota: en el ejemplo el ancho máximo está puesto a 550, cámbialo al ancho del contenido de tu tema)
Si, además, quieres desactivar los auto-incrustados en WordPress 3.5 ya sabes que puedes hacerlo como comenté el otro día y puedes comprobar en el enlace anterior.
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!
Me ha venido genial
¿Y si tengo un diseño web adaptativo (responsive wen design)?
En ese caso no te afecta, ya tu tema viene adaptado
fernando tengo optimizepress y no viene adaptado pero no encuentro nada de lo que usted pone ahi en el archivo php functions, espero me pueda colaborar. gracias
Me modifica el ancho pero el alto se sigue yendo de madre. Que puedo hacer?
¿cómo hacer para marcar un ancho determinado? es decir, que sea exactamente con ancho por ejemplo 640px. Es que desde la actualización me aparece un ancho muy pequeño y me interesaría limitarlo a este. ¡Muchas gracias por vuestra ayuda!
Esto para los que como a mí no les haya funcionado la solución dada en este post.
He probado algo y parece que funciona:
hay que buscar la función wp_embed_defaults() en wp-includes/media.php
function wp_embed_defaults() {
if ( ! empty( $GLOBALS[‘content_width’] ) )
$width = (int) $GLOBALS[‘content_width’];
if ( empty( $width ) )
$width = 500;
$height = min( ceil( $width * 1.5 ), 1000 );
return apply_filters( ‘embed_defaults’, compact( ‘width’, ‘height’ ) );
}
lo que he hecho es modificar el valor por defecto «500» al ancho de mi theme y parece haber funcionado.
No sé si habría una función que pudiéramos añadir a nuestro archivo de funciones que solucionara esto sin modificar el código original de wordpress (no se de códigos :(, a ver si alguien puede decir cómo hacerlo).
La solución, como siempre, perfecta. Gracias Fernando
Entrando como administrador a wp-admin/options.php podemos encontrar tres campos que hacen referencia a oEmbeds (o eso creo) y son:
embed_autourls
embed_size_h
embed_size_w
Supongo que toman los datos de las versiones anteriores a 3.5.en mi caso tengo el valor 600 en embed_size_h.
Fernando, una consulta:
El campo embed_autourls está vacío ¿Quiere decir que no genera automaticamente los oEmbeds (autoincrustados)?
Gracias