我的函数中的代码。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
插件
最合适的回答,由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\');