[Résolu] Image différente en page boutique et page produit d’un même produit (Créer un compte)

  • WordPress :6.4
  • Statut : résolu
15 sujets de 16 à 30 (sur un total de 54)
  • Auteur
    Messages
  • #2475539
    ferman
    Participant
    Maître WordPress
    7063 contributions

    Chez vous le code ne marchera pas car les urls ne différent pas par des chiffres mais par des lettres (A,B,C,D…). Il semblerait d’ailleurs que dans votre cas l’image de la galerie retenue pour la catégorie soit toujours -A-. Par exemple, pour « neige subsaharienne », c’est « https://www.notabane-parfums.com/wp-content/uploads/neige-A-100×100.jpg ». Il y a aussi neige-B, neige-C- et neige-D-. Quatre images en tout.

    Pour les trois premiers produits, (« force tranquille », « lyon alpha », « neige subsaharienne ») si vous voulez respectivement les images B,C,D, vous utiliserez le code suivant:

    $=jQuery;
    var a = $('.woocommerce-LoopProduct-link.no-lightbox .woo-entry-image-main');
    var d = /[-][A-Z][-]/g;


    a.each(function () {
    var b = $(this).attr("srcset").toString();

    for (i = 0; i <a.length; i++) {
    if ($(this).attr("srcset").indexOf("neige") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-B-"));
    }
    else if ($(this).attr("srcset").indexOf("lion-alpha") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-C-"));
    }
    else if ($(this).attr("srcset").indexOf("force") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-D-"));
    }

    else {return
    }
    }
    });

    Notez le mot-clé qui est tiré de l’url des images.

    Il y a deux produits qui échappent à la règle: « nuit dakaroise » et « oudacieux » (pour oudacieux, c’est comme chez moi): pas de lettres mais des chiffres. Pour le prendre en compte, il suffit de remplacer var d = /[-][A-Z][-]/g;  par var d = /[-][A-Z0-9][-]/g;  Pour »nuit dakaroise », c’est encore différent. Il faudra le traiter à part si vous le souhaitez.

    Vous voyez pourquoi il est important d’avoir accès au site .

    Si vous êtes satisfait du résultat dans l’inspecteur, je vous indiquerai comment pérenniser le code.

    #2475540
    Guillaume Homespot
    Participant
    Initié WordPress
    48 contributions

    waaa

    Comment vous allez vite !

    j’suis en train de batailler pour trouver le fichier pour modifier des bricoles (le « s’enregistrer » dans la page mon compte et le « carte de débit/crédit » dans le form de paiement dans le panier/commande)

    Je n’ai pas encore mis les tofs en position 1 dans les pages produits. Je m’en occupe de suite.

    Par souci de simplicité je vais également changer tous les noms des photos…. en 1 (celle à mettre en page boutique) puis 2, 3, 4 et 5 en page produit

    C’es vraiment gentil de votre part

     

    #2475552
    Guillaume Homespot
    Participant
    Initié WordPress
    48 contributions

    J’ai changé les noms mais, dans le WordPress, pas les noms des fichiers. Est ce bon ou faut il changer le nom du fichier source ?

    J’ai mis pour exemple avec le produit Nuit Dakaroise, le nom « nuit 1 » pour la photo boutique et « nuit 2 », « nuit 3 » etc etc

    Impossible de mettre le code dans la console de l’inspecteur. Message d’alerte, bloqué

     

    #2475553
    ferman
    Participant
    Maître WordPress
    7063 contributions

    Bon,

    Ne changez rien, laissez les choses comme elles sont et oubliez l’inspecteur et son message d’alerte. Je vous passe plus tard le code « pérennisé ».

    Pour le moment installez l’extension wpcode (la version gratuite).

    #2475554
    ferman
    Participant
    Maître WordPress
    7063 contributions

    Après avoir activé l’extension, cliquez sur « extraits de code » -> « ajouter un extrait » -> »ajoutez votre code personnalisé ». Sur l’écran qui apparaît, donnez un titre à votre extrait, dans la liste déroulante à droite, sélectionnez « extrait php » et copiez/collez le code ci-dessous:

    function changimage(){?>

    <script>

    $=jQuery;
    var a = $('.woocommerce-LoopProduct-link.no-lightbox .woo-entry-image-main');
    var d = /[-][A-Z0-9][-]/g;

    a.each(function () {

    for (i = 0; i <a.length; i++) {
    if ($(this).attr("srcset").indexOf("neige") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-B-"));
    }
    else if ($(this).attr("srcset").indexOf("lion-alpha") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-C-"));
    }
    else if ($(this).attr("srcset").indexOf("force") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-D-"));
    }
    else if ($(this).attr("srcset").indexOf("oudacieux") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-2-"));
    }
    /*else if ($(this).attr("srcset").indexOf("mot-clé") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"valeur souhaitée"));
    }
    else if ($(this).attr("srcset").indexOf("mot-clé") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"valeur souhaitée"));
    }
    else if ($(this).attr("srcset").indexOf("mot-clé") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"valeur souhaitée"));
    } */

    else {return
    }
    }
    });

    </script>

    <?php
    }
    add_filter('wp_footer', 'changimage',100 );

    Enregistrez, activez. Si je n’ai pas fait d’erreur en recopiant, cela devrait être bon. Par contre pour « nuits », ça ne fonctionne pas. Très certainement parce que l’image actuelle n’est pas au même format que les autres (png et jpg). Essayez de modifier ces images: tout en jpg ou png et au lieu de Nuits et nuitA, B, C faire nuit-A-, (B, C…etc) ou nuit-1- (2,3…etc) de la même manière que pour les autres produits.

    Fichiers joints :
    Vous devez être connecté pour voir les fichiers joints.
    #2475556
    Guillaume Homespot
    Participant
    Initié WordPress
    48 contributions

    J’ai essayé.

    Le wp code et tout le process que vous avez dit. Il ne s’est rien passé.  Même pas un plantage.

    Du coup, j’en ai profité pour mettre toutes les bonnes images.

    Pour résumer, chaque image principale de chaque page produit ne doivent pas apparaître dans les dites pages produits.

    Par contre, j’insiste, vous passez du temps, vous nous aidez, je suis obligé de vous remercier d’une façon ou d’une autre.

    Je voudrai vraiment vous faire un p’tit cadeau, c’est normal.

    Et j’ai pas un bout de cheveu de vous pour aller voir un marabout !

    Comment se joindre svp ?

    #2475584
    ferman
    Participant
    Maître WordPress
    7063 contributions

    Bonjour,

    Le code ne fonctionne plus chez moi non plus et c’est normal car vous avez opéré quelques changements qui l’empêchent de fonctionner. Je vous expliquerai en détail demain car c’est assez long. Pour faire simple, avec le code actuel, il faut que les urls des images de la galerie produit aient des structures identiques. Par exemple, pour neige, c’est:

    https://www.notabane-parfums.com/wp-content/uploads/neige-B (ou une autre lettre ou un chiffre)-100x100 (le 100x100 est attribué automatiquement par wordpress).jpg

    Avec « neige » en minuscule. Si vous choisissez quelque chose de différent (par exemple Neige avec une majuscule et sans lettre après) il n’y aura pas d’erreur mais pas de remplacement. Neige en majuscule et avec une lettre après conduira à la disparition de l’image. C’est le même problème pour tous les produits avec en plus d’autres différences que je préciserai demain.

    Pour le moment, je vous conseillerais de ne pas sélectionner les nouvelles images de la galerie  au niveau de la page produit (hier, à part « nuit dakaroise » pour laquelle le problème existait déjà, en principe tout fonctionnait). Essayez ensuite pour voir si ça fonctionne mieux (je pense que oui)  et demain nous pourrons voir comment introduire correctement de nouvelles images.

    • Cette réponse a été modifiée le il y a 2 semaines et 4 jours par ferman.
    • Cette réponse a été modifiée le il y a 2 semaines et 4 jours par ferman.
    #2475626
    Guillaume Homespot
    Participant
    Initié WordPress
    48 contributions

    Bonjour Ferman.

    On s’est mal compris. Enfin nan, c’est de ma faute, je n’avais pas mis les photos requises. Pour ca que j’ai effectué les modifs. Là, les photos en « vignette principale » sont les photos à apparaître en page boutique et non en page produit.

    Voulez vous que je modifie tous les titres, par exemple,  en « neige-1 », « neige-2 », « neige-3 » , « neige-4 » et « neige-5 » ?

    L’idée étant de tout préparer pour que vous soyez le + tranquille possible.

    J’ai regardé dans votre profil pour vous contacter mais il n’y a rien. Je suggère d’ailleurs aux admins du site de pouvoir laisser une possibilité que les membres puissent se contacter entre eux. Là, j’ai un peu l’impression d’être sur une plage de naturiste en Espagne avec tout le monde « qui-matte-mais-qui-disent-qu’ils-mattent-pas »….

    #2475629
    ferman
    Participant
    Maître WordPress
    7063 contributions

    Bonjour,

    Voulez vous que je modifie tous les titres, par exemple, en « neige-1 », « neige-2 », « ige-3 » , « neige-4 » et « neige-5 » ?

    Ce n’est pas nécessaire. Ce qui est important c’est que, après « neige- », vous ayez une lettre majuscule ou un chiffre de 0 à 9 . Pareil pour les autres images.

    j’ai regardé dans votre profil pour vous contacter mais il n’y a rien.

    tout le monde « qui-matte-mais-qui-disent-qu’ils-mattent-pas »….

    C’est le principe d’un forum: tout est public à disposition des participants du forum et il n’y a pas de communication privée (sauf avec les modérateurs , par exemple pour faire supprimer un lien ).  Bon, ça empêche de vous faire parvenir un cheveu pour le marabout mais de toute façon, je suis comme vous, méfiant: et si le marabout se réveille de mauvaise humeur?  Au lieu d’une intervention bienveillante il est capable de lancer un maléfice; donc, pas de cheveu 🙂

    Je n’avais jamais eu à utiliser le genre d’extension dont je parle dans la pièce jointe mais ce n’est pas compliqué. Pour des infos sur le plugin, voir ICI.  Vous pourrez si vous voulez désactiver/supprimer l’extension quand vous aurez terminé. Si vous avez des questions (probablement) n’hésitez pas à demander.

     

     

    • Cette réponse a été modifiée le il y a 2 semaines et 4 jours par ferman.
    Fichiers joints :
    Vous devez être connecté pour voir les fichiers joints.
    #2475662
    Guillaume Homespot
    Participant
    Initié WordPress
    48 contributions

    Bonjour

    Merci pour le tuto !

    Bon, j’ai pas mal galéré, c’est vrai que, c’était un peu le bordel cette histoire de photos… les noms, les emplacements….

    Grâce à un peu d’huile de coude et votre plugin, voilà au final :

    • toutes les photos sont en .jpeg, de format 800×800 et dans le même répertoire (/2016/04)
    • toutes les photos ont le nom de fichier et le nom WordPress identique
    • toutes les photos sont placées dans le bon ordre dans les fiches produits avec à chaque fois la « -1 » en page boutique et vignette principale
    • toutes les photos sont nommées en « 1ermotduproduit-nombre » (Ex : neige-1, neige-2, neige-3, neige-4, neige-5)

    J’ai vidé les caches, je n’ai pas régénéré les images (dois je le faire)

    Ouais faut faire attention les marabouts aujourd’hui… Beaucoup sont en carton… Un peu comme le type, aujourd’hui, il achète une clé à molette et ca y est il est plombier…En plus, les marabouts d’aujourd’hui bossent un peu comme les garagistes. Vous y allez pour 1 truc, et au final, vous ressortez avec presque votre voiture qui ne peut plus rouler….

    Même avec les gri-gris ils ne s’embêtent plus. Avant, on avait des beaux gri-gris, genre avec des coquillages et tout… La fois passée, ma femme revient avec un bout de chiffon là, tout dégueulasse, qui maintenant pendouille au dessus de la porte d’entrée…. Bref

    J’insiste, désolé, mais il est normal que je vous fasse un petit cadeau… C’est morale, et, question de karma aussi, je fais attention…On peut se retrouver sur la Face de Bouc ou sur Discord si vous voulez

    #2475668
    ferman
    Participant
    Maître WordPress
    7063 contributions

    J’ai vidé les caches, je n’ai pas régénéré les images (dois je le faire)

    Non, j’ai vérifié: tout semble bon. Voici le code correspondant pour les 8 parfums. Je n’ai pas accès à votre admin donc je ne peux pas vérifier chez vous la partie php mais elle fonctionne parfaitement sur mon site d’essai donc cela doit être pareil pour votre site. Si ce n’est pas le cas on avisera.

    function changimage(){?>

    <script>

    $=jQuery;
    var a = $('.woocommerce-LoopProduct-link.no-lightbox .woo-entry-image-main');
    var d = /[-][0-9][-]/g;

    a.each(function () {

    for (i = 0; i <a.length; i++) {
    if ($(this).attr("srcset").indexOf("neige") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-3-"));
    }
    else if ($(this).attr("srcset").indexOf("lion") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-3-"));
    }
    else if ($(this).attr("srcset").indexOf("force") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-3-"));
    }
    else if ($(this).attr("srcset").indexOf("oudacieux") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-3-"));
    }
    else if ($(this).attr("srcset").indexOf("nuit") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-3-"));
    }
    else if ($(this).attr("srcset").indexOf("rouge") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-3-"));
    }
    else if ($(this).attr("srcset").indexOf("santal") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-3-"));
    }
    else if ($(this).attr("srcset").indexOf("signare") != -1 ) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-3-"));
    }
    else {return
    }
    }
    });

    </script>

    <?php
    }
    add_filter('wp_footer', 'changimage',100 );

    Le code ci-dessus est nécessaire si vous voulez changer pour des images différentes pour chaque produit (par ex neige-… pour neige-2 mais lion-… pour lion-3 etc.), ou si vous ne voulez appliquer le code qu’à certains produits. Par contre, si vous voulez changer toujours pour la même image et pour tous les produits(par ex neige-… pour neige-2;   lion-… pour lion-2; oudacieux-… pour oudacieux-2 etc.), le code est plus simple:

    function changimage(){?>

    <script>

    $=jQuery;
    var a = $('.woocommerce-LoopProduct-link.no-lightbox .woo-entry-image-main');
    var d = /[-][0-9][-]/g;

    a.each(function () {

    for (i = 0; i <a.length; i++) {
    $(this).attr("srcset",$(this).attr("srcset").replaceAll(d,"-3-"));
    }
    });

    </script>

    <?php
    }
    add_filter('wp_footer', 'changimage',100 );

    Comme vous n’utilisez que des chiffres, j’ai simplifié la variable « d » en excluant la possibilité de mettre des lettres majuscules (plus de neige-A!. Si un jour vous changez d’avis vous n’aurez qu’à reprendre la valeur donnée précédemment.

    …mais il est normal que je vous fasse un petit cadeau…

    Ne craignez rien pour votre karma, le cadeau est déjà fait:  c’était un plaisir de chercher un code pour résoudre un problème intéressant et d’avoir l’occasion d’essayer un excellent plugin que je ne connaissais pas.  Je n’utilise pas « discord » ni « face de-bouc » ni « skype » ni leurs semblables  🙁  mais c’est gentil d’y avoir pensé. Dans vos parfums, je ne vois pas « frangipanier ». L’odeur des frangipaniers fait partie des très bons souvenir de mes années lointaines en Côte d’Ivoire.

    Une petite remarque: sur la page « points de vente » vous avez un point de vente au Sénégal avec une adresse à Dakar. C’est normal mais vous avez un « point de vente en France » avec la même adresse. Ça fait bizarre.

    Tenez moi au courant  quand out fonctionnera, n’oubliez pas de passer le sujet en « Résolu ».

    • Cette réponse a été modifiée le il y a 2 semaines et 2 jours par ferman.
    #2475670
    Guillaume Homespot
    Participant
    Initié WordPress
    48 contributions

    Grand merci…

    Hors de question de changer d’image… j’ai déjà trop souffert sur ce coup là….

    Je dois rentrer le code dans le fichier « functions.php » c’est ca ?

    La marque est toute récente. La campagne pub est lancée le 10 de ce que j’ai compris (affiche 4×3, spot télé publicitaire…). L’égérie, une actrice « célèbre » (tout est relatif) est une bouteille de coca mais vlà comment elle se la raconte…. Quand je suis passé voir pendant le tournage, l’autre elle m’a prise pour un clochard presque, juste parce que j’étais en short et en tong !

    Yes merci pour le point de vente, faut que je vois cela avec la Boss, elle doit me communiquer l’adresse du siège en France….

    Vous connaissez la Côte d’Ivoire ?  arffff ici, même combat…

    #2475672
    ferman
    Participant
    Maître WordPress
    7063 contributions

    Bonjour,

    Je dois rentrer le code dans le fichier « functions.php » c’est ca ?

    Par exemple, mais à condition d’avoir un thème enfant (c’est mieux de toute façon ), sinon toutes les personnalisations que vous ferez (à part les CSS personnalisés) seront effacées à chaque mise à jour du thème.

    Le mieux est d’utiliser le plugin wpcode.

    #2475691
    Guillaume Homespot
    Participant
    Initié WordPress
    48 contributions

    ‘lut

    oui j’ai un thème mouflet.

    Par WP code je peux entrer les codes ? ok ok

     

    #2475696
    ferman
    Participant
    Maître WordPress
    7063 contributions

    Par WP code je peux entrer les codes ? ok ok

    Attention c’est l’un ou l’autre code, pas les deux à la fois. Vous le saviez sûrement mais ça ne coûte rien de prévenir.

15 sujets de 16 à 30 (sur un total de 54)
  • Vous devez être connecté pour répondre à ce sujet.