Partage
  • Partager sur Facebook
  • Partager sur Twitter

Id incrementer sur images

14 janvier 2011 à 11:23:44

Bonjour a tous,

voilà j'essaye actuellement de développer mon thème prestashop, et j'aimerai que dans cette liste chaque LI est une id différente.
Vous allez me dire c'est le cas !
Seulement les id ne se suivent pas c'est (thumbnail_73, thumbnail_99, thumbnail_123 ...) et j'aimerai que ce soit thumbnail_1, thumbnail_2, thumbnail_3 à chaque fois ...

J'imagine que c'est possible non ?
Mais comment ?

<!-- thumbnails -->
		<div id="views_block" {if count($images) < 2}class="hidden"{/if}>
		
		<div id="thumbs_list">
			<ul id="thumbs_list_frame">
				{foreach from=$images item=image name=thumbnails}
				{assign var=imageIds value=`$product->id`-`$image.id_image`}
				<li id="thumbnail_{$image.id_image}">
					<a  onclick="return false;" href="{$link->getImageLink($product->link_rewrite, $imageIds, 'large')}" rel="other-views" class="" title="{$image.legend|htmlspecialchars}">
		<img id="thumb_{$image.id_image}" src="{$link->getImageLink($product->link_rewrite, $imageIds, 'large')}" alt="{$image.legend|htmlspecialchars}" height="{$smallSize.height}" width="{$smallSize.width}" />
		</a>				</li>
				{/foreach}
			</ul>
		</div>
		{if count($images) > 5}<a id="view_scroll_right" title="{l s='Other views'}" href="javascript:{ldelim}{rdelim}">{l s='Next'}</a>{/if}
		</div>
		{/if}
		{if count($images) > 1}<p class="align_center clear"><a id="resetImages" href="{$link->getProductLink($product)}" style="display:none;" onclick="$('a#resetImages').hide('slow');return (false);">{l s='Display all pictures'}</a></p>{/if}
	</div>


Merci d'avance pour votre aide.
  • Partager sur Facebook
  • Partager sur Twitter
14 janvier 2011 à 11:25:40

Bonjour,

je pense que l'id_image correspont à l'id dans la bdd non ?
  • Partager sur Facebook
  • Partager sur Twitter
14 janvier 2011 à 11:29:27

Oui c'est ça, et j'aimerai que ce soit toujours 1,2,3,4 car si à chaque fois que je crée une fiche produit il faut que j'aille voir l'id de l'image pour appliquer dessus du css ... -_-' Ou si je modifie une image son l'id en question va changer donc faudra que je modifie de nouveau mon css.

Bref c'est beaucoup plus simple si c'est sur chaque page produit 1,2,3,4,5 ...
  • Partager sur Facebook
  • Partager sur Twitter
14 janvier 2011 à 11:30:18

Je ne pense pas .. utilise un regex pour récuperer tout ce qu'il y après "_" non ?
  • Partager sur Facebook
  • Partager sur Twitter
14 janvier 2011 à 11:32:14

Bonjour,

Je sais pas comment tu récupère tes infos de ta BD mais je pense que ceci pourrait t'aider.
  • Partager sur Facebook
  • Partager sur Twitter
14 janvier 2011 à 11:40:58

Pourquoi tu n'utilises pas un compteur dans le template en l'initialisant avant le foreach et tu l'incrémente a chaque fin de boucle.
  • Partager sur Facebook
  • Partager sur Twitter
14 janvier 2011 à 11:44:18

@NoseborN j eregarde, ça me parrait assez compliqué mais je vais essayer

@scourjean pourquoi ? euh ... car je sais tout simplement pas faire :)
  • Partager sur Facebook
  • Partager sur Twitter
14 janvier 2011 à 11:54:22

Quelque chose dans ce genre là ? Voir des parenthèses autour de $cptImage+1 si ça incrémente pas bien.

{assign var=cptImage value=`1`}
{foreach from=$images item=image name=thumbnails}
	{assign var=imageIds value=`$product->id`-`$image.id_image`}
	<li id="thumbnail_{$cptImage}">
		<a  onclick="return false;" href="{$link->getImageLink($product->link_rewrite, $imageIds, 'large')}" rel="other-views" class="" title="{$image.legend|htmlspecialchars}">
			<img id="thumb_{$image.id_image}" src="{$link->getImageLink($product->link_rewrite, $imageIds, 'large')}" alt="{$image.legend|htmlspecialchars}" height="{$smallSize.height}" width="{$smallSize.width}" />
		</a>
	</li>
	{assign var=cptImage value=`$cptImage+1`}
{/foreach}

  • Partager sur Facebook
  • Partager sur Twitter
14 janvier 2011 à 13:31:28

La ça incrémente correctement le problème c'est qu'il y a un attribut de style display:none; qui se rajoute et je sais pas d'ou il vient ...

Image utilisateur
  • Partager sur Facebook
  • Partager sur Twitter