As written in the documentation, there are no attributes width
and height
in the fourth parameter of the function. What you might want to do is this:
wp_get_attachment_image(
$id,
array( 10, 10 )
);
An alternative and recommended way is to define an image size which will lead WordPress to generate a thumbnail for this size on upload.
add_action( 'after_setup_theme', 'wpse_132171_create_image_size' );
function wpse_132171_create_image_size() {
add_theme_support( 'post-thumbnails' );
add_image_size( 'my_size', 10, 10 );
}
With that, you can refer to that size by the slug my_size
in wp_get_attachment_image()
:
wp_get_attachment_image( $id, 'my_size' );
For this solution you should rebuild your thumbnails if you have existing images using a plugin like »AJAX Thumbnail Rebuild«
Note: When you use an array
as 2nd argument, WordPress will use attachment-{$val1}x{$val2}
(a string built from the array values) as class
. This behavior breaks as soon as you use the 4th argument (array attributes
) and add a custom class
key there. The custom class
will override what is delivered by core. This could be considered to be a bug.