web-dev-qa-db-fra.com

Empêcher Wordpress de générer une taille moyenne de 768 pixels par seconde pour le téléchargement d’images?

J'ai suivi les instructions pour empêcher wordpress de générer de nombreuses tailles différentes pour les images individuelles téléchargées via les tailles miniature, moyenne et grande à 0 dans Paramètres> Multimédia et me suis débarrassé de toutes les instances de add_image_size et set_post_thumbnail_size dans le fichier functions.php de thème. Toutefois, lorsque je télécharge de nouvelles images, Wordpress génère toujours une version d'une largeur de 768 pixels qui dépasse la taille d'origine. Je crois que cela a quelque chose à voir avec cette mise à jour mais je me demande s’il existe un moyen de l’empêcher de se produire? Je crois avoir lu certaines discussions où des personnes ont réussi à le faire par inadvertance en essayant de faire autre chose, mais je cherche une méthode bien définie.

7
user3597545

Pour supprimer la taille d'image medium_large, vous pouvez essayer de la supprimer avec le filtre intermediate_image_sizes :

add_filter( 'intermediate_image_sizes', function( $sizes )
{
    return array_filter( $sizes, function( $val )
    {
        return 'medium_large' !== $val; // Filter out 'medium_large'
    } );
} );

Vous ne savez pas si vous essayez de supprimer toutes les tailles intermédiaires, mais vous pouvez alors essayer:

add_filter( 'intermediate_image_sizes', '__return_empty_array', 999 );

__return_empty_array () ` est une fonction centrale intégrée.

Nous devrions noter qu'il n'est pas possible de l'enlever avec

remove_image_size( 'medium_large' );

car il n'est pas ajouté avec add_image_size() et ne fait donc pas partie du tableau $_wp_additional_image_sizes global ni de wp_get_additional_image_sizes();

11
birgire

Supprimez la taille de l'image de la même manière que le code de base wordpress le fait:

add_filter('intermediate_image_sizes', function($sizes) {
    return array_diff($sizes, ['medium_large']);
});

Gardez à l'esprit que medium_large est généralement une bonne taille à avoir dans srcset, ne le supprimez que si vous savez parfaitement comment fonctionne srcset, si vous avez déjà des tailles similaires.

4
Dima Stefantsov

ça va marcher


function paulund_remove_default_image_sizes( $sizes) {
    unset( $sizes['medium_large']);
    return $sizes;
}
add_filter('intermediate_image_sizes_advanced','paulund_remove_default_image_sizes');

https://developer.wordpress.org/reference/hooks/intermediate_image_sizes_advanced/

2
Sil2