Получение разного размера изображений вложений

Я в замешательстве, потому что есть много функций о вложениях. Я пробовал множество функций. Я настраиваю изображение для каждого моего сообщения в блоге.

Мне нужно получить разные размеры этого изображения. Например, необходимо, чтобы эти варианты отображаемого изображения

600px * 400px

300px * 150px

64px * 64px

(Изображения могут быть обрезаны).

Я добавляю эти новые размеры изображений (в functions.php ):

 add_image_size('custombig', 600, 400, TRUE); add_image_size('customsmall', 300, 152, TRUE); add_image_size('customimage', 64, 64, TRUE); 

single.php )

  <?php // inside a Loop if (has_post_thumbnail( $post->ID )) $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'customsmall' ); ?> <img alt="" src="<?php echo $image[0]; ?>" /> 

Но это печать полного размера изображения. Не обрезать или изменять размер.

Можете ли вы научить меня получать разные размеры прикрепленных изображений или предложить мне несколько статей об этом?

Solutions Collecting From Web of "Получение разного размера изображений вложений"

Поскольку вы определили изображение для каждого сообщения с помощью

 <?php the_post_thumbnail( 'custombig' ); // or another custom size name ?> 

должно быть достаточно, для информации вы можете прочитать:

http://justintadlock.com/archives/2009/11/16/everything-you-need-to-know-about-wordpress-2-9s-post-image-feature

http://markjaquith.wordpress.com/2009/12/23/new-in-wordpress-2-9-post-thumbnail-images/

Или здесь есть хорошая информация:

Как дескриптор WordPress загружает изображения и как их использовать в коде

Возможно ли, что вы определили эти пользовательские размеры изображений после того, как изображения уже были загружены? Если это так, вам нужно будет сгенерировать миниатюры для этих изображений, так как WP автоматически не создает задним числом новые размеры изображений.

Для этого я лично использую Regenerate Thumbnails . Здорово.

Вы должны попробовать использовать его следующим образом:

 <?php // inside a Loop if (has_post_thumbnail( $post->ID )) $imageBig = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), array(600, 400) ); $imageMid = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), array(300, 152) ); $imageSmall = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), array(64, 64) ); ?> <img alt="" src="<?php echo $imageBig; ?>" /> <img alt="" src="<?php echo $imageMid; ?>" /> <img alt="" src="<?php echo $imageSmall; ?>" /> 

,
Надеюсь это поможет 🙂
Привет, Саги.

 <?php // code copied from adjacent_image_link() in wp-include/media.php $attachments = array_values(get_children( array('post_parent' => $post->post_parent, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => 'ASC', 'orderby' => 'menu_order ID') )); foreach ( $attachments as $k => $attachment ) if ( $attachment->ID == $post->ID ) break; $next_url = isset($attachments[$k+1]) ? get_permalink($attachments[$k+1]->ID) : get_permalink($attachments[0]->ID); $prev_url = isset($attachments[$k-1]) ? get_permalink($attachments[$k-1]->ID) : get_permalink($attachments[0]->ID); ?> 

образец: изображения