Le gestionnaire de média de WordPress, qui vous permet d’envoyer et ajouter, dans vos articles/pages, des fichiers multimédias, propose par défaut 4 choix de tailles d’images différentes : miniature, moyenne, large et taille réelle. Depuis la version 3.3, il est possible d’y ajouter des choix supplémentaires, grâce au filtre image_size_names_choose.
Cette possibilité peut vous être utile si par exemple vous souhaitez définir une nouvelle taille d’image grâce à add_image_size, et que vous souhaitez la rendre accessible aux utilisateurs de votre site. Pour cela, il vous faudra reprendre le code ci-dessous, dans le fichier functions.php de votre thème ou dans une extension de site. J’ai pris pour exemple l’ajout d’une taille d’image qui serait utilisée pour les articles mis en avant.
|
1 2 3 4 5 6 7 8 9 10 11 12 |
if ( function_exists( 'add_image_size' ) ) { add_image_size( 'featured', 350, 350, true ); // on vérifie que la fonction existe, puis on crée la nouvelle taille d'image. Le dernier paramètre à true indique qu'il faut rogner l'image pour qu'elle s'adapte aux dimensions } add_filter('image_size_names_choose', 'my_image_sizes'); // le filtre qui permet d'ajouter la nouvelle taille au gestionnaire de médias function my_image_sizes($sizes) { $addsizes = array( "featured" => __( "Featured") // on indique ici le nom de la nouvelle image (défini dans add_image_size), et le texte qui doit apparaître pour la sélection ); $newsizes = array_merge($sizes, $addsizes); return $newsizes; } |
Une fois la modification sauvegardée, vous pourrez voir la modification dans votre gestionnaire de médias, comme vous pouvez le voir ci-dessous.
Cette option supplémentaire ne sera prise en compte que pour les nouvelles images envoyées. Si vous voulez pouvoir modifier vos anciennes images, utilisez l’extension Regenerate Thumbnails qui créera les tailles manquantes.
18 Responses to “Ajouter une taille d’image au gestionnaire de médias WordPress”


Merci pour cette astuce qui marche super bien !
Je cherchais justement à voir comment faire ça sans passer par un plugin. Parfait !
Merci pour cette astuce !
Merci très bonne chose cette nouveauté wordpress
Merci pour cette explication.
j’ai une question : comment sélectionner par défaut la nouvelle dimension lorsque le gestionnaire de média s’ouvre ?
Une proposition à tester, en reprenant le code de mon exemple :
if (get_option(‘image_default_size’) != ‘featured’)) {
update_option(‘image_default_size’, ‘featured’);
}
A mettre dans functions.php également. La taille par défaut sélectionnée dans le gestionnaire est sauvegardée dans une option de WP. Pour ne pas faire appel à update_option à chaque fois, on vérifie si la valeur actuelle de la taille par défaut , et on la met à jour uniquement si nécessaire.
Je testerai cette solution
Merci
Bonjour dans votre code j’ai cette erreur :
Parse error: syntax error, unexpected ‘=’, expecting ‘)’ in
à cette ligne “featured” => __( “Featured”)
De ou cela provient svp ?
Une erreur s’était glissée dans le code, le caractère ‘>’ a été automatiquement remplacé par son équivalent html ‘& gt;’. J’ai fait la correction.
Merci
Mais bizarre je n’ai pas le changement qui s’affiche dans média :s
J’ai bien mis le code avec la correction mais j’ai toujours le problème:
Parse error: syntax error, unexpected ‘=’, expecting ‘)’ in …/functions.php on line 22
/* AJOUT TAILLE PERSO */
if ( function_exists( ‘add_image_size’ ) ) {
add_image_size( ‘featured’, 350, 350, true ); // on vérifie que la fonction existe, puis on crée la nouvelle taille d’image. Le dernier paramètre à true indique qu’il faut rogner l’image pour qu’elle s’adapte aux dimensions
}
add_filter(‘image_size_names_choose’, ‘my_image_sizes’); // le filtre qui permet d’ajouter la nouvelle taille au gestionnaire de médias
function my_image_sizes($sizes) {
$addsizes = array(“featured” =>__( “Featured”) // on indique ici le nom de la nouvelle image (défini dans add_image_size), et le texte qui doit apparaître pour la sélection
);
$newsizes = array_merge($sizes, $addsizes);
return $newsizes;
}
A la place de :
$addsizes = array(« featured » =>__( « Featured »)
il faut mettre :
$addsizes = array(“featured” =>__(“Featured”)
Ce n’est pas les bon guillemets !
Très bon tutoriel par contre le filtre ne fonctionnera que dans la dernière version de WP
Merci pour cette astuce, je cherchais justement à rajouter une taille !
Superbe astuce ! Je viens juste d’en avoir besoin pour un client, c’est vraiment top !
Bonjour,
Pour essayer, j’ai mis le script tel quel dans function.php du thème et rien n’apparait dans le gestionnaire.
wp 3.5
je ne dois pas être très doué!
Je n’ai pas vérifié si ça fonctionnait avec WP 3.5, il faudrait vu qu’il y a eu du changement dans la fenêtre de gestion des médias
J’ai effectivement une combo au lieu des boutons radio.
Mais c’est sûrement antérieur à ça car, sur un site ou je retrouve les boutons radio, le script ne donne pas de bouton supplémentaire.
Vous êtes sur quelle version?
Ne fonctionne pas/plus. Merci de mettre à jour