在WordPress中使用wp_get_attachment_image()的正确方法

我正在寻找使用wp_get_attachment_image()的正确方法。
如下代码:

< ?php $args = array( 'type' => 'attachment', 'category_name' => 'portfolio' ); $attachments = get_posts($args); print_r($attachments); ?>

产生以下结果:
Array ( [0] => stdClass Object ( [ID] => 54 [post_author] => 1 [post_date] => 2010-06-22 00:32:46 [post_date_gmt] => 2010-06-22 00:32:46 [post_content] => < a href="http://localhost/wordpress/wp-content/uploads/2010/06/Capture.jpg"> < img class="alignnone size-medium wp-image-55" title="Capture" src="http://localhost/wordpress/wp-content/uploads/2010/06/Capture-300x114.jpg" width="300" height="114" /> < /a> [post_title] => Our Own Site [post_excerpt] => [post_status] => publish [comment_status] => open [ping_status] => open [post_password] => [post_name] => our-own-site [to_ping] => [pinged] => [post_modified] => 2010-06-22 00:40:22 [post_modified_gmt] => 2010-06-22 00:40:22 [post_content_filtered] => [post_parent] => 0 [guid] => http://localhost/wordpress/?p=54 [menu_order] => 0 [post_type] => post [post_mime_type] => [comment_count] => 0 [filter] => raw ) )

但是, 以下内容不返回任何内容。
< ?php echo wp_get_attachment_image(54, array('300', '300')); ?>

我在这里做错了什么?
#1函数wp_get_attachment_image仅获取上传到wordpress的图像, 而不会在帖子内容中输出图像。
你必须输出示例图像的帖子内容。
像:echo $ attachments [‘ post_content’ ];
#2【在WordPress中使用wp_get_attachment_image()的正确方法】实际上, 我认为接受的答案不能真正回答问题。
你的问题是你将帖子ID(在你的示例中为54;在WP措辞中通常为$ post-> ID)传递给wp_get_attachment_image()。如在法典中可以看到的, 你应该使用附件ID(请参见下面的$ attachment_id):
wp_get_attachment_image( $attachment_id, $size, $icon );

换句话说, 你必须执行以下操作:
$image_attr = wp_get_attachment_image_src(get_post_thumbnail_id($post-> ID), 'medium');

#3如你所见, wp_get_attachment_image函数可以接受四个值:
wp_get_attachment_image ( int $attachment_id, string|array $size = 'thumbnail', bool $icon = false, string|array $attr = '' )

所以我总是用:
< ?php echo wp_get_attachment_image( get_the_ID(), array('700', '600'), "", array( "class" => "img-responsive" ) ); ?>

注意:我们可以简单地使用get_the_ID()来传递活动帖子的ID。其中700是宽度, 600是附件图像的高度。我们也可以将我们的类作为array(” class” => ” img-sensitive” )传递

    推荐阅读