2017-10-16 10 views
0

Dans Wordpress, nous avons ajouté nos propres tailles d'image intermédiaires aux tailles Wordpress standard en utilisant add_image_size(). En utilisant notre propre interface d'administration pour télécharger des images, nous utilisons wp_generate_attachment_metadata() pour créer toutes les vignettes et les sauvegarder dans un dossier prédéfini sur le serveur. Toutefois, nous souhaitons limiter wp_generate_attachment_metadata() pour générer nos tailles d'image définies uniquement et ignorer les tailles standard de Wordpress.Comment limiter wp générer des métadonnées de pièce jointe() à certaines tailles d'image intermédiaires

Est-ce possible?

Merci d'avance pour toute aide!

Répondre

1

Il semble qu'il y ait un filtre pour le tableau $sizes généré lors de l'utilisation de wp_generate_attachement_metadata() appelé intermediate_image_sizes_advanced.

J'ai trouvé cet extrait qui devrait faire l'affaire si vous mettez cela dans un fichier fonctions de quelque sorte (normalement il serait probablement aller dans votre fichier functions.php):

/** 
* Snippet Name: Disable auto creating of image sizes 
* Snippet URL: http://www.wpcustoms.net/snippets/disable-auto-creating-image-sizes/ 
*/ 
function wpc_unset_imagesizes($sizes){ 
    unset($sizes['thumbnail']); 
    unset($sizes['medium']); 
    unset($sizes['medium_large']); 
    unset($sizes['large']); 
} 
add_filter('intermediate_image_sizes_advanced', 'wpc_unset_imagesizes'); 

L'extrait ci-dessus devrait retirer tous les par défaut Les tailles d'image Wordpress du tableau $sizes utilisé dans wp_generate_attachment_metadata() et ne génèrent que les tailles d'image personnalisées que vous avez ajoutées.

REMARQUE: je n'ai pas testé ce code, mais il me semble évident. Si vous souhaitez que le filtre affecte uniquement votre "propre interface d'administration", vous pouvez ne pas placer l'extrait dans un fichier de fonctions distinct qui ne sera appelé que dans votre interface d'administration.

Voir la référence développeur pour la fonction et le crochet ci-dessous: https://developer.wordpress.org/reference/functions/wp_generate_attachment_metadata/ https://developer.wordpress.org/reference/hooks/intermediate_image_sizes_advanced/