添加_IMAGE_SIZE不使用_POST_缩略图

时间:2015-12-29 作者:Toni Michel Caubet

我的函数中的代码。php

function custom_thumbs() {
    add_image_size( \'cover-size\', 1600, 450, true ); 
}
add_action( \'after_setup_theme\', \'custom_thumbs\' );
用法:

echo the_post_thumbnail($post->ID,\'cover-size\');

但结果是:

<img width="3648" height="2736" src="http://localhost/sonru/wp-content/uploads/2015/12/DSC04656.jpg" class="attachment-9 size-9 wp-post-image" alt="DSC04656" cover-size="" srcset="http://localhost/sonru/wp-content/uploads/2015/12/DSC04656-300x225.jpg 300w, http://localhost/sonru/wp-content/uploads/2015/12/DSC04656-600x450.jpg 600w" sizes="(max-width: 3648px) 100vw, 3648px">
我错过了什么?

-编辑-

我已经在使用regenerate thunbnails 插件

2 个回复
最合适的回答,由SO网友:jgraup 整理而成

您可能需要重新生成图像。有插件可以实现这一点,或者重新上传你的图像,看看大小是否会影响。它不会自动发生在现有文件上。

首先,检查上载目录,查看文件是否以您知道的生成方式存在。然后尝试另一个函数来输出结果。

当您使用以下各项时,最终会得到什么结果:

$attachment_id = get_post_thumbnail_id( $post->ID ); 
$img_src = wp_get_attachment_image_url( $attachment_id, \'cover-size\' ); 
$img_srcset = wp_get_attachment_image_srcset( $attachment_id, \'cover-size\' );
此外,如果您可以方便地为该附件输出元数据,请特别查看size 信息:

print_r ( wp_get_attachment_metadata( $attachment_id) );
以上wp_get_attachment_image_srcset 需要WordPress 4.4,您可以找到有关Responsive Images in WordPress 4.4.

假设文件存在:

你是在循环中还是在循环之外?

如果你在里面试试the_post_thumbnail (\'cover-size\');

否则echo get_the_post_thumbnail ($post,\'cover-size\');

SO网友:Pieter Goosen

您使用了错误的功能:

  • the_post_thumbnail() 不接受post ID作为值,但接受图像大小。

  • get_the_post_thumbnail() 是你需要的,也许是你想要使用的。第一个参数接受post ID,第二个参数接受要使用的图像大小,如您的问题所示

    解决方案交换the_post_thumbnail() 具有get_the_post_thumbnail()

    编辑注释,确保在添加缩略图支持后添加新的图像大小。此外,您还需要添加一个新的帖子缩略图大小set_post_thumbnail_size()

相关推荐

Remove <p></p> after images

我对<p></p> 出现在my之后的标记<img....>. 以下是我在本地主机上查看生成的页面时显示的内容。。。<img src=\"/wp-content/themes/wunderful/assets/images/feedback-danielle.png\" alt=\"Danielle Johnson Deal Town FC Treasurer\"> <p></p> 请注意随机生成的<p>&