¿Desea crear tamaños de imagen adicionales en WordPress?
Cada vez que subes una imagen, WordPress crea automáticamente varias copias de esa imagen a diferentes tamaños. Algunos temas y plugins de WordPress también crean sus propias copias a distintos tamaños.
En este artículo, le mostraremos cómo crear fácilmente tamaños de imagen adicionales en WordPress y utilizarlos en su sitio web.
¿Por qué crear tamaños de imagen adicionales en WordPress?
Normalmente, los temas y plugins populares de WordPress crean automáticamente tamaños de imagen adicionales. Por ejemplo, su tema puede crear diferentes tamaños para usar como miniaturas en sus páginas de archivo o página de inicio personalizada.
Sin embargo, a veces estas imágenes pueden no cumplir perfectamente sus requisitos. Por ejemplo, puede que desee utilizar diferentes tamaños de imagen en un tema hijo o en una disposición de cuadrícula.
Para ello, tendrás que crear tamaños de imagen adicionales en WordPress y luego llamar a la imagen correcta cuando la necesites.
Con esto en mente, veamos cómo crear tamaños de imagen adicionales en WordPress.
Registro de tamaños de imagen adicionales para su tema
La mayoría de los temas de WordPress son compatibles con imágenes destacadas, también conocidas como miniaturas de entradas.
Sin embargo, si está creando un tema de WordPress personalizado, tendrá que añadir soporte para imágenes destacadas añadiendo el siguiente código al archivo functions.php de su tema:
add_theme_support( 'post-thumbnails' );
Una vez que haya añadido soporte para miniaturas de entradas, puede registrar tamaños de imagen adicionales mediante la función add_image_size().
Utilizarás la función add_image_size con el siguiente formato:
add_image_size( 'name-of-size', width, height, crop mode );
He aquí algunos ejemplos de cómo podría ser la función completa:
add_image_size( 'sidebar-thumb', 120, 120, true ); // Hard Crop Mode
add_image_size( 'homepage-thumb', 220, 180 ); // Soft Crop Mode
add_image_size( 'singlepost-thumb', 590, 9999 ); // Unlimited Height Mode
Aquí hemos especificado tres tamaños de imagen diferentes. Cada uno tiene diferentes modos como recorte duro, recorte suave y altura ilimitada.
Veamos cómo puede utilizar cada modo en su propio blog o sitio web de WordPress.
1. Modo de recorte duro
En el ejemplo anterior, hemos utilizado un valor ‘true’ después de la altura. Esto le dice a WordPress que recorte la imagen al tamaño exacto que definimos, que es 120px por 120px en este caso.
Esta función recortará automáticamente la imagen por los lados o por arriba y por abajo, dependiendo del tamaño. De esta manera, puedes asegurarte de que todas tus imágenes están en proporción y se ven bien en tu sitio web WordPress.
2. Modo de recorte suave
Como puede ver en nuestro ejemplo de recorte suave, no hemos añadido un valor “verdadero” después de la altura:
add_image_size( 'homepage-thumb', 220, 180 );
Esto se debe a que el modo de recorte suave está activado por defecto.
El recorte suave redimensiona la imagen proporcionalmente sin distorsionarla, por lo que es posible que no obtenga las dimensiones exactas que desea. Normalmente, el recorte suave coincide con las dimensiones de anchura, pero las dimensiones de altura pueden ser diferentes en función de la proporción de cada imagen.
He aquí un ejemplo:
3. Modo de altura ilimitada
A veces puede tener imágenes largas que desea utilizar en su sitio web, pero limitando su anchura. Por ejemplo, puede que haya creado una infografía para el sitio web de su empresa. Las infografías suelen ser muy largas y normalmente más anchas que el contenido.
El modo de altura ilimitada le permite especificar una anchura que no rompa su estructura / disposición / diseño / plantilla, sin limitar la altura.
Mostrar tamaños de imagen adicionales en su tema de WordPress
Una vez que haya añadido más tamaños de imagen a su sitio web, es hora de mostrarlos en su tema de WordPress.
Simplemente abra el archivo del tema en el que desea utilizar un tamaño de imagen diferente y, a continuación, añada el siguiente código dentro del bucle de la entrada:
<?php the_post_thumbnail( 'your-specified-image-size' ); ?>
Es posible que desee añadir un poco de estilo para que la imagen encaje perfectamente con el resto de su sitio. Sin embargo, esto es todo lo que necesita para mostrar tamaños de imagen adicionales en su tema.
Regeneración de tamaños de imagen adicionales
La función add_image_size() solo crea tamaños adicionales cuando subes una nueva imagen. Esto significa que cualquier imagen que haya subido antes de crear la función add_image_size() no tendrá los nuevos tamaños.
Para corregir este problema, tendrás que regenerar las miniaturas de tu sitio web de WordPress con Perfect Images. Este plugin regenerará las imágenes destacadas, las imágenes retina y actualizará los metadatos de los medios.
En primer lugar, tendrás que instalar y activar el plugin. Si necesitas ayuda, consulta nuestra guía sobre cómo instalar un plugin de WordPress.
Una vez activado, vaya a Medios “ Perfect Images. Perfect Images explorará tu biblioteca de medios de WordPress, por lo que es posible que tengas que esperar unos instantes hasta que termine.
Una vez que haya terminado, abra el menú desplegable que muestra ‘Acciones en lote’ por defecto y, a continuación, seleccione ‘Regenerar todas las entradas / registros.’
Perfect Images regenerará ahora todas tus miniaturas.
Para más información sobre este debate, consulte nuestro artículo sobre cómo regenerar fácilmente nuevos tamaños de imagen.
Activar tamaños de imagen adicionales para el contenido de sus entradas
Aunque haya añadido algunos tamaños de imagen nuevos, actualmente solo puede utilizarlos en el tema de WordPress, y no en el contenido de las entradas.
Para que estos nuevos tamaños estén disponibles en el editor de contenidos de WordPress, debe añadir el siguiente código al archivo functions.php de su tema:
function wpb_custom_image_sizes( $size_names ) {
$new_sizes = array(
'homepage-thumb' => 'Homepage Thumbmail',
'singlepost-thumb' => 'Infographic Single Post'
);
return array_merge( $size_names, $new_sizes );
}
add_filter( 'image_size_names_choose', 'wpb_custom_image_sizes' );
No olvides guardar los cambios después de añadir el código.
Ahora, cuando subas una imagen a WordPress verás todos los tamaños personalizados en ‘Tamaño de imagen’. Ahora puedes cambiar el tamaño de la imagen cuando trabajes en cualquier página o entrada.
Esperamos que este artículo te haya ayudado a aprender cómo crear tamaños de imagen adicionales en WordPress. Puede que también quieras ver nuestra selección experta de los mejores plugins de Instagram para WordPress y nuestra guía sobre cómo elegir el mejor software de diseño web.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Syed Balkhi says
Hey WPBeginner readers,
Did you know you can win exciting prizes by commenting on WPBeginner?
Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
You can get more details about the contest from here.
Start sharing your thoughts below to stand a chance to win!
Jiří Vaněk says
Thanks for the tutorial, I’m trying to do the same thing using another tutorial but it didn’t work. This works perfectly.
axel says
That was easy, thanx.
Something harder:
How do i get rid of old, unused thumbnail sizes?
(best without a plugin)
Kind regards
axel
WPBeginner Support says
We cover how you can remove the unused image sizes in our article below:
https://www.wpbeginner.com/wp-tutorials/how-to-prevent-wordpress-from-generating-image-sizes/
We recommend plugins to simplify the process, if you’re worried about the number of plugins on your site, we would recommend taking a look at our article below:
https://wpbeginner.com/opinion/how-many-wordpress-plugins-should-you-install-on-your-site/
Administrador
B Toro says
Very simple and helpfull
WPBeginner Support says
Glad our guide was helpful
Administrador
JKLYN says
Quite helpful tutorial. But how to set class for image??
Kim says
Thanks WPBeginner, this worked a treat!
Thiago says
Hi,
Great article! However, I still do not understand the usefulness of hard crop tool; I uploaded an image with 306×165, and after that I created two custom sizes: 256×148 (Soft Crop) and 256×148 (Hard Crop), however, as you can see in this print taken from the post: [http://prnt.sc/eromp3] both Options remain the same. I created a file in Photoshop containing 256×148 and I dragged the original image without resizing anything, and the result you can see in example 4 of the image above. So, my question is this: should image 2 not look like the image generated by Photoshop?
Follows below the code used on functions.php:
//Soft Crop used in example 2
if ( function_exists( ‘add_image_size’ ) ) {
add_image_size( ‘new-size8’, 256, 148 );
}
add_filter(‘image_size_names_choose’, ‘my_image_sizes8’);
function my_image_sizes8($sizes) {
$addsizes = array(
“new-size8” => __( “New Size8”)
);
$newsizes = array_merge($sizes, $addsizes);
return $newsizes;
}
////Hard Crop used in example 3
if ( function_exists( ‘add_image_size’ ) ) {
add_image_size( ‘new-size9’, 256, 148, true, array( ‘center’, ‘center’ ) ); //(cropped)
}
add_filter(‘image_size_names_choose’, ‘my_image_sizes9’);
function my_image_sizes9($sizes) {
$addsizes = array(
“new-size9” => __( “New Size9”)
);
$newsizes = array_merge($sizes, $addsizes);
return $newsizes;
}
Thanks in advance!
Kevin says
This works great, but on thing that always bothers me is that if someone uploads an image that is smaller than one of your cropped sized then that image will not be created, which ruins the layout if you wanted equal height images
Matt Rock says
Struggling with the same issue, Kevin (uploading smaller image does not create cropped size). I understand why this might make sense (system will not produce unnecessary images), but a low/poor resolution would look better than an ill-cropped one…
gonza says
Thanks for the info
you help me so much!
Sakshi says
I write this code can.
Actually i want to set the post thumbnail size for the banner image.Which i was uploading through featured image in the background please suggest me.
Aakash says
Hi,
I m new in wordpress,and accept i have many problems,and the first is,i created lot of post in wordpress,suppose A B C D,and when i update this in my website they look like first is D and then c and then b and then a means when i upload first they are show in last.if any solution that first they look in series not DCBA like ABCD…plz help
Daniel Knoflicek says
awsome… so helpfull for a lot of gallery plugins…
Lavinia Manzanarez says
Excellent! I read the use of this function on the Codex of WordPress but sometimes I need a step by step thing, thank you!
WPBeginner Staff says
Yes it is possible.
Farmer John says
I too want to do the same as Ali Rohan wants to do. can you kindly elaborate pleas.. ‘coz i tried to implement the method explained by you but could not succeed. I can’t understand where I am doing wrong. How do I link the text of resolution to image file?
Ali Rohan says
Thanks for nice article.
I wanna start a wallpapers website in wordpress so is it possible that when i upload one big wallpaper then it auto resized to many resolutions for users. For example when i upload 1920×1280 wallpaper then it must be resized to 1024×768, 800×600 etc resolution … so users can easily view and download desired size wallpaper ?
Aayush says
Hi Dear. i need your urgent help. i have a problem with the images size. actually i am using a plugin WP Gallery Custom Links. i have uploaded lot of images in a post but every images has a different height and width so they are appearing with different different sizes. i want to set them with the same size which i want to set. please tell me any idea to solve this problem.
Here says
I just needed to say thanks for saying this. You’re right on.|
Shoaib says
Excellent explanation
Andrew says
I’ve set this up and it’s working splendidly minus the suggestion MIKE LITTLE made above – the thumbnail is changed and it shows up that way in the backend in the media gallery – but on the frontend where my loop is – the image thumb is still what WP defaults to – i’ve even run REGEN THUMBS and it still doesn’t fix the issue – anyone else having this problem or know the fix???
WPBeginner Support says
Look at your loop and use
<?php the_post_thumbnail('your-specified-image-size'); ?>
instead ofthe_post_thumbnail(
)Administrador
Tomasz says
Nice tutorial!
Please check out the plugin which allows to manually crop the registered image sizes:
http://wordpress.org/plugins/manual-image-crop
WPBeginner Support says
Thanks, looks like a nice plugin. We will look into it.
Administrador
Marc C says
Good tutorial – many thanks WPBEGINNER.
I too was having the problem of not being able to crop the new registered image sizes but the plugin posted by TOMASZ does the job nicely – thanks TOMASZ!
Robbe Clerckx says
Still helpfull after all this time :). Thank you.
Danny says
Thank you for this very clear and helpful tutorial. It saved me a lot of time since the WP documentation is very cryptic.
lydia karanja says
I have a wordpress account but I did not know how to manage it but now I know all thanks to this tutorial, thank you very much for helping people understand more on how to create and manage their websites.
andy19at says
@jezThomp Great if your images work
jezThomp says
@andy19at Link…?
andy19at says
@jezThomp A link? I didn’t post it cos it didn’t work.
jezThomp says
@andy19at http://t.co/YvmiX9hR
mikelittle says
You say: “The downside of hard cropping is that you cannot control which part of the image is displayed.” Not true.
When you have uploaded an image and before you insert into post, you can click on ‘edit image’ and from there change the thumbnail or the whole image, scale, rotate, or flip the image , and for the thumbnail select the exact portion of the image you want.
wpbeginner says
@mikelittle Thanks for the correction Mike. Just edited the article
clelandillustration says
I can’s seem to get the custom crop to work for new image sizes. The custom crop will work for the default “thumbnail” size version, but that crop won’t apply to new image sizes. It seems the crop is still uncontrollable for custom image sizes.
Brent Norris says
good insight into the edit flow…
TdGon says
Good article ..and photos to go along with it too…nice. I saw in a few places how to do this but they did not explain it as well as you do here. I am off to try it out.
Thanks a lot ! (0.o)
PaulDeWoutersd'Oplinter says
excellent explanation for a confusing topic. and very useful plugin
mssbee says
Great tutorial! Thanks for explaining the different crop options. It really helped me to understand how they work.
tjhakan says
Nice tutorial. good job
defries says
Nice round up of what can be done with just the default featured image feature. One extra tip: you can also set the width of your content area as a featured image and define that same width in Settings > Media. This way you can select a featured image to use in your theme and it will be automatically the maximum size of the content area.
Also great having those values in there for <a href=”http://codex.wordpress.org/Embeds”>oEmbed</a>.
Ordinary Randomness says
Thanks for this tutorial, I was wondering why sometimes I had images that were not cropping to the size I had coded.