Changer la règle de nommage des images lors de l’upload (Créer un compte)

  • WordPress :5.8
  • Statut : non résolu
5 sujets de 1 à 5 (sur un total de 5)
  • Auteur
    Messages
  • #2396798
    Ostalada
    Participant
    Initié WordPress
    16 contributions

    Bonjour,

    Ma configuration WP actuelle

    • Version de PHP/MySQL : 7.4
    • Thème utilisé : Thème from scratch

    Problème(s) rencontré(s) :

    Bonjour,

    J’aimerais un conseil pour le thème que j’intègre.  Quand une image est uploadée, elle est dupliquée pour chaque format d’image en subissant nativement cette règle de nommage : name-of-image-{width-of-size}-{height-of-size}.extension.

    Par exemple :

    1. Si je défini a format d’image avec add_image_size('custom-size', 120, 120)
    2. Puis que j’uploade une image hello-world.jpg
    3. Une image hello-world-120-120.jpg est générée

    Comment changer cette règle ? J’aimerais que le nom du format passe derrière les dimensions. Si je reprends l’exemple précédent, j’aimerais que l’image soit nommée :  hello-world-120-120-custom-size.jpg.

    C’est possible ? Il y a un filtre pour ça ?
    A très vite j’espère, Merci

    #2396807
    Lumiere de Lune
    Participant
    Maître WordPress
    20531 contributions

    Cette règle fait partie du « core » de wordpress et elle est utilisée partout pour définir le fichier image à afficher. Donc la réponse est non

    (et accessoirement, quel est ton intérêt pour faire ça ? ça répond à quel besoin ?

    #2396854
    Li-An
    Participant
    Maître WordPress
    28916 contributions

    Bonjour, on ne peut éventuellement que changer le nom des images, pas la structure de nom des miniatures.

    #2396882
    Ostalada
    Participant
    Initié WordPress
    16 contributions

    Ok, merci pour vos réponses.


    @Lumiere
    de Lune, pour te répondre : un client a installé un plugin retina qui fait automatiquement une copie retina en ajoutant le fameux suffixe @2x avant l’extension. Pour x raisons, il souhaite ne plus utiliser ce plugin et internaliser le processus au thème. Mais il souhaite quand même avoir des images retinas via un système de srcset et avec le même principe de naming.

    Je tentais donc de reproduire le système. Si je reprends l’exemple du topic.

    1. Pour un format définis comme ceci add_image_size('custom-size', 120, 120)
    2. Je créé un autre format add_image_size('custom-size-2x', 240, 240)
    3. Avec le filtre, si j’uploadais une image hello-world.jpg, on aurait obtenu hello-world-120-120.jpg et hello-world-120-120@2x.jpg
    4. Puis j’aurais affiché comme ceci
      <img src="hello-world-120-120.jpg" srcset="hello-world-120-120@2x.jpg 2x">

    Mais je vais devoir certainement faire autrement.
    Merci encore.

    • Cette réponse a été modifiée le il y a 2 années et 10 mois par Ostalada.
    • Cette réponse a été modifiée le il y a 2 années et 10 mois par Ostalada.
    • Cette réponse a été modifiée le il y a 2 années et 10 mois par Ostalada.
    #2396895
    Lumiere de Lune
    Participant
    Maître WordPress
    20531 contributions

    Ce n’est pas exactement ce que tu décris dans ton post initial, où tu parles d’ajouter le nom du format (donc dans ton exemple, custom size), alors que le plugin retina n’ajoute pas une taille personnalisée, il double le jeu complet d’images générées par wordpress, en ajoutant son suffixe. WordPress, pour toutes les tailles, dispose de son image avec son nom qui se termine par les dimensions.

    Tu peux tout simplement regarder dans le code du plugin. Mais je pense qu’il y a une action à l’enregistrement du fichier image (donc sur post_save, avec toutes les conditions nécessaires…) et un filtre sur the_content pour élargir le srcset (cf https://buzut.net/webdesign-pour-ecrans-retina/ ou d’autres techniques https://blog.ippon.fr/2012/11/19/les-images-responsives/

5 sujets de 1 à 5 (sur un total de 5)
  • Vous devez être connecté pour répondre à ce sujet.