Jump to content

Référencement des images dans Prestashop 1.5, balise alt


Recommended Posts

Bonjour  :)

 

Je m'attaquais au référencement de mes images sur mon site (prestashop 1.5.4.1) et j'ai remarqué avec Firebug qu'un grand nombre de mes images n'avaient pas d'attributs (contrairement à mon autre site fait avec prestashop 1.4.9).

 

Je me suis donc renseigné et j'ai appris qu'avec la version 1.5, prestashop récupère automatiquement le titre du produit. Cependant j'utilise un thème acheté et ma balise alt reste vide !

 

 

Je vois énormément de sujets concernant mon problème, mais pas de solution ou du moins je n'ai pas tout compris. 

 

Je souhaite remplir les balises alt de ma page produit. Apparemment il faut modifier le fichier product.tpl, pourriez-vous me dire comment remplir la balise alt :

 

- de l'image du produit 

- des images qui s'ouvrent lorsque l'on clique dessus (thikbox)

 

 

L'idéal serait que l'attribut alt reprenne le nom du fichier d'origine (nom de l'image).

 

En vous remerciant d'avance!

Bien cordialement.

Link to comment
Share on other sites

Bonjour,

je ne sais pas qui vous a dit que sous presta 1.5 les balises ALT reprenaient les titres du produit. Je ne peux que lui conseiller de relire les realase... Presta 1.5 ne permet pas de compléter les balises ALT. Pour cela il faut faire une manip sur un fichier.

 

Par ailleurs vous auriez fait une petite recherche vous auriez constaté que pas plus tard que quelques semaines ce même sujet a été abordé. Je ne peux que vous conseiller d'effectuer cette petite recherche et ainsi vous aurez toutes les solutions pour compléter les balises ALT.

 

Bon courage a vous

Link to comment
Share on other sites

Bonjour, merci pour votre réponse,

 

En fait j'avais regardé les précédents sujets,

 

Pour le moment ce que j'ai trouvé à modifier dans le fichier product.tpl, ce sont les petites images à côté de l'image principale du produit.

 

Mon attribut alt actuel est : {$image.legend|htmlspecialchars} . Mais l'attribut alt reste vide en regardant avec firebug.

 

J'ai trouvé sur les forums qu'on pouvait remplacer par :

 

{$product->description_short}   - Ce qui ne fonctionne pas chez moi, l'attribut reste vide

 

{$product->name|escape:'htmlall':'UTF-8'}    - Fonctionne le nom du produit est mis en attribut.

 

Ce dernier est déjà mieux, mais le mieux serait que l'attribut repris soit le nom de mon fichier d'origine (avant l'import de l'image).

 

Je ne trouve pas également ou se situe la balise alt de l'image affichée en grand, lorsque l'on clique dessus.

 

 

En vous remerciant pour votre aide !

Edited by eightmann (see edit history)
Link to comment
Share on other sites

Personne a de solution ?  :mellow:

 

- Pour le lien dans l'attribut alt, j'ai remarqué que c'est à cause du JqZoom qui est activé, une fois désactivé c'est bon le titre du produit est repris dans la balise alt de l'image par défaut.

 

 

- Par contre je n'arrive toujours pas à mettre d'attribut lorsque l'image est zoomée !

 

En regardant le code html j'ai "<img id="fancybox-img" src="http://www.wwww.fr/166-thickbox_default/image.jpg" alt=""> 

 

On voit bien que ma balise alt est vide, le problème c'est que je ne trouve nulle part ce code html, j'ai déjà cherché dans product.tpl et product-list.tpl.

 

Merci pour l'aide !

 

Bien cordialement.

Link to comment
Share on other sites

  • 5 weeks later...

Bonjour,

J'ai le même problème : en utilisant jqzoom, la balise alt indique l'adresse http de l'image agrandie et non la description de l'article.

Je n'ai pas de solution pour l'instant à part utiliser magiczoom ou un équivalent, mais qui est plus lourd, notamment dans le code.

Cordialement.

Link to comment
Share on other sites

Désolé, il semble bien que le template "product.tpl" ait changé ligne 186 :

<img src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large_default')|escape:'html'}"{if $jqZoomEnabled && $have_image} class="jqzoom"{/if} title="{$product->name|escape:'htmlall':'UTF-8'}" alt="{$product->name|escape:'htmlall':'UTF-8'}" id="bigpic" width="{$largeSize.width}" height="{$largeSize.height}"/>

Comme ça, la balise alt est correcte (du moins tant qu'on ne survole pas avec la souris).

 

Il semble aussi qu'il faille ajouter une balise "rel" :

<img src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large')|escape:'html'}"{if $jqZoomEnabled && $have_image} class="jqzoom" rel="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'thickbox')}"{/if} title="{$product->name|escape:'htmlall':'UTF-8'}" alt="{$product->name|escape:'htmlall':'UTF-8'}" id="bigpic" width="{$largeSize.width}" height="{$largeSize.height}"/>

Au total, je n'arrive pas clairement à faire fonctionner le jqzoom et la thickbox comme auparavant.

Si quelqu'un a une idée précises des modifs et de leurs impacts dans "product.js" et "product.tpl" ?

Merci beaucoup d'avance.

Edited by Zitoun (see edit history)
Link to comment
Share on other sites

  • 1 year later...

Bonjour,

j'ai le meme problème et je n'arrive pas à trouver de solution.

le fichier serait : jquery.fancybox.js

ligne 3 : image:'<img class="fancybox-image" src="{href}" alt="" />'

je ne sais pas quoi mettre dans cette balise "alt" pour pouvoir récupérer le nom de l'image.

Merci pour votre aide.

Link to comment
Share on other sites

  • 4 months later...

Bonjour,

 

Ayant rencontré le même problème sur un PS 1.5.4, j'ai enfin trouvé la  solution pour mettre le nom du produit dans la balise ALT de l'image (possibilité de mettre ce que l'on veut via le product.tpl).

 

Voici les différentes modifications : 

 

1- Fichier product.js -> Fonction displayImage :

 

Remplacer : 

$(this).attr('alt', domAAroundImgThumb.attr('href'));

Par : 

$(this).attr('rel', domAAroundImgThumb.attr('href'));

2- Fichier product.tpl -> <span id="view_full_size"> :

 

Remplacer : 

<img src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large_gbm')}" {if $jqZoomEnabled}class="jqzoom" alt="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'thickbox_gbm')}"{else} title="{$product->name|escape:'htmlall':'UTF-8'}" alt="{$product->name|escape:'htmlall':'UTF-8'}" {/if} id="bigpic" width="{$largeSize.width}" height="{$largeSize.height}" />

Par :

<img src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large_gbm')}" {if $jqZoomEnabled}class="jqzoom" rel="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'thickbox_gbm')}" alt="{$product->name|escape:'htmlall':'UTF-8'}"{else} title="{$product->name|escape:'htmlall':'UTF-8'}" alt="{$product->name|escape:'htmlall':'UTF-8'}" {/if} id="bigpic" width="{$largeSize.width}" height="{$largeSize.height}" />

3- Fichier jquery.jqzoom.js (dans le dossier plugin de jquery) :

 

Remplacer dans le fichier tous les 

attr("alt" ...

Par : 

attr("rel" ...

Cette méthode permet d'utiliser la balise REL à la place de ALT dans Jqzoom.

Du coup on peut mettre ce que l'on veut dans la balise ALT pour améliorer son SEO  :)

 

Logs

Edited by logs00 (see edit history)
  • Like 1
Link to comment
Share on other sites

Bonjour,

 

après plusieurs essaies j'arrive pas a résoudre mon Probleme Avec les Images produits. J espere que vous pourriez m'aider.

 

j'ai un catalogue Avec presque 10.000 article. Vue que mes produits se ressemblent, chaque 1000 article selon la categorie ont la meme Image "Image non contractuelle".

 

Je souhaite donc inserer dans le tableau ps_image les ID du produits (1...1000) et referencer sur la meme Image. Mais je pense je dois changer le product.tpl.

 

Y a eventuellement quelqu un qui a eu le meme Probleme !?

 

Je vous remercie d'avance.

Meyer

Link to comment
Share on other sites

  • 1 year later...

Bonjour,

 

Je déterre car je n'ai toujours pas trouvé la solution.

 

J'utilise Thickbox et non jqzoom (qui ne fonctionne pas), j'ai - {$product->name|escape:'htmlall':'UTF-8'}  qui fonctionne pour les images de base mais le alt reste désespérément vide pour tout le reste.

 

Avez-vous trouvé des solutions ?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...