Oto kilka rzeczy, które możesz spróbować usunąć responsywną obsługę obrazów w 4.4:
/**
* Disable responsive image support (test!)
*/
// Clean the up the image from wp_get_attachment_image()
add_filter( 'wp_get_attachment_image_attributes', function( $attr )
{
if( isset( $attr['sizes'] ) )
unset( $attr['sizes'] );
if( isset( $attr['srcset'] ) )
unset( $attr['srcset'] );
return $attr;
}, PHP_INT_MAX );
// Override the calculated image sizes
add_filter( 'wp_calculate_image_sizes', '__return_empty_array', PHP_INT_MAX );
// Override the calculated image sources
add_filter( 'wp_calculate_image_srcset', '__return_empty_array', PHP_INT_MAX );
// Remove the reponsive stuff from the content
remove_filter( 'the_content', 'wp_make_content_images_responsive' );
ale jak wspomniano w @cybmeta, problem może być gdzie indziej.
Wymuś włączenie protokołu https srcset
Możesz przeprowadzić debugowanie z wp_calculate_image_srcset
filtrem, a nawet wypróbować tę szybką poprawkę :
add_filter( 'wp_calculate_image_srcset', function( $sources )
{
foreach( $sources as &$source )
{
if( isset( $source['url'] ) )
$source['url'] = set_url_scheme( $source['url'], 'https' );
}
return $sources;
}, PHP_INT_MAX );
ustawić schemat adresu URL na https
. Innym podejściem byłoby pozbawienie go schematów //
.
Sprawdź Kodeks dla innych set_url_scheme()
opcji:
$source['url'] = set_url_scheme( $source['url'], null );
$source['url'] = set_url_scheme( $source['url'], 'relative' );
Ale powinieneś spróbować kopać głębiej i znaleźć podstawową przyczynę.
Aktualizacja:
Mogliśmy wcześniej wyskoczyć z wp_calculate_image_srcset()
funkcji za pomocą:
add_filter( 'wp_calculate_image_srcset_meta', '__return_empty_array' );
następnie używając filtrów wp_calculate_image_srcset
lub max_srcset_image_width
.
Zaktualizowano również zgodnie z biletem # 41895 , aby zwrócić pustą tablicę zamiast false / null.