我试图降低我的网页加载速度。Google PageSpeed Insights告诉我优化图像。在下面的代码中,如何设置图像大小,以便在上载的图像为99999×99999px时,渲染图像的最大宽度为427px?
<?php
if ( has_post_thumbnail() ) {
echo \'<a href="\' . get_permalink($post->ID) . \'" >\';
the_post_thumbnail();
echo \'</a>\';
} else {
echo \'<a href="\' . get_permalink($post->ID) . \'" ><img src="\'. get_stylesheet_directory_uri() . \'/img/fallback-featured-image.jpg" /></a>\';}
?>
我希望Wordpress能够自动处理这个问题,这样我就不必担心在上传之前裁剪图片了。拥有原始大小也很好,但我们不希望用户等待加载如此大的图像。
最合适的回答,由SO网友:Andy Macaulay-Brook 整理而成
在您的功能中。php您想发出一个调用来设置\\u post\\u thumbnail\\u size()
https://codex.wordpress.org/Function_Reference/set_post_thumbnail_size
与add\\u image\\u size一样,您可以提供目标宽度、高度和;是否要将图像硬裁剪为这些尺寸。例如,
set_post_thumbnail_size(427, 427, true);
将您的所有缩略图裁剪为最大427px高或宽,具体取决于原始缩略图的纵横比。
如果您使用
set_post_thumbnail_size(427, 9999);
然后,您的图像将缩放到427px宽,而不会被裁剪。