Jump to content

[reseolu] ajouter "ajout au panier" sur une autre page


Recommended Posts

je dois rajouter un bouton "ajout au panier " dans un autre fichier tpl

 

j'ai fais cela

 

 

 

 

<form id="buy_block" {if $PS_CATALOG_MODE AND !isset($groups) AND $product->quantity > 0}class="hidden"{/if}

action="{$link->getPageLink('cart.php')}" method="post">

 

<input type="submit" name="Submit" value="{l s='Add to cart'}" class="add_to_cart" />

 

 

</form>

 

 

quand je clique sur le bouton , le lien est bien monsite.panier mais la page est vide ...

je pense que deja je n'ai pas l'id du produit ...mais jene vois plus comment faire

Link to comment
Share on other sites

Bonjour

Pour avoir travaillé sur le sujet, je pense qu'en plus de l'id_product, il manque aussi le token et aussi beaucoup d'autres choses.

Est ce qu'un bouton ajout au panier en ajax ne serait pas plus indiquer (plus simple à mettre en oeuvre) on a juste besoin du token :

$token=Tools::getToken(false);

et de l'id_product

 

Cordialement

Link to comment
Share on other sites

j'ai vraiment pas de chance car j'ai l'impression que je pose des questions trop compliqués car je n'ai jamais de reponse

En fait c'est pas trop compliqué, mais un peu vague :

Est ce que votre demande c'est : je veux un bloc (je l'ai compris en trouvant 'buy_block' pour que les clients puissent ajouter au panier un article précis ?, un au hasard ?

 

Suivant votre demande je pourrai meme vous le faire.

Link to comment
Share on other sites

en faite j'utilise le carroussel homecarrousel , voici le tpl

<!-- MODULE Home Featured Products -->

<form id="buy_block" {if $PS_CATALOG_MODE AND !isset($groups) AND $product->quantity > 0}class="hidden"{/if} action="{$link->getPageLink('cart.php')}" method="post">
    {if isset($groups)}<h5>{l s='Personalize it !!'}</h5>{/if}
 {if isset($colors) && $colors}
 <!-- colors -->
 <div id="color_picker">
  <p>{l s='Pick a color:' js=1}</p>
  <div class="clear"></div>
  <ul id="color_to_pick_list">
  {foreach from=$colors key='id_attribute' item='color'}
   <li><a id="color_{$id_attribute|intval}" class="color_pick" style="background: {$color.value};" onclick="updateColorSelect({$id_attribute|intval});$('#wrapResetImages').show('slow');" title="{$color.name}">{if file_exists($col_img_dir|cat:$id_attribute|cat:'.jpg')}<img src="{$img_col_dir}{$id_attribute}.jpg" alt="{$color.name}" width="20" height="20" />{/if}</a></li>
  {/foreach}
  </ul>
  <div class="clear"></div>
 </div>

 {/if}
<div id="information" style="border: 2px solid #D0D3D8;margin-bottom:20px;background:#F5E6E7;">
		 {if !empty($product->information)}
			 {$product->information}
		 {/if}
	 </div>

{if isset($products) AND $products}
 <ul id="mycarousel" class="jcarousel-skin-tango">
{foreach from=$products item=product name=homeFeaturedProducts}
 {assign var='productLink' value=$link->getProductLink($product.id_product, $product.link_rewrite)}
 <li>
<h5><a href="{$productLink}" title="{$product.name}">{$product.name|escape:htmlall:'UTF-8'|truncate:45}</a></h5>

<a href="{$productLink}" title="{$product.legend}" class="product_image"><img src="{$link->getImageLink($product.link_rewrite, $product.id_image, $imagetype)}" alt="{$product.legend}" /></a>
  {if $displayname} 

  {/if}
  {if $displayprice}
   <p>
   <span class="price">{displayWtPrice p=$product.price}</span>
<input type="submit" name="Submit" value="{l s=''}" class="add_to_cart" />
   </p>
  {/if}
 </li>
{/foreach}
</ul>
{else}
<p>{l s='No products for carousel' mod='homecarousel'}</p>
{/if}


<!-- /MODULE Home Featured Products -->

 

sous chaque produit , j'ai un bouton "panier"...

il me fait bien le lien www.monsite.fr/panier mais page blanche

Link to comment
Share on other sites

Bonjour

<a title="Ajouter au panier" href="cart.php?add&id_product={$product.id_product}&token={Tools::getToken(false)}" rel="ajax_id_product_{$product.id_product}" class="button ajax_add_to_cart_button exclusive">Ajouter au panier</a>			  

A insérer sous

<h5><a href="{$productLink}".... 

 

Il faudrait changer le fichier php pour ne pas redemander 50 fois le token, mais vous pouvez essayer comme ça.

Link to comment
Share on other sites

j'ai une erreur suivante

Fatal error: Smarty error: [in /homez.365/monsite/www/modules/homecarousel/homecarousel.tpl line 66]: syntax error: unrecognized tag: Tools::getToken(false) (Smarty_Compiler.class.php, line 446) in /homez.365/monsite/www/tools/smarty_v2/Smarty.class.php on line 1095

Link to comment
Share on other sites

  • 2 weeks later...

pour finir voila ce que j'ai rajouter pour ajouter un bouton "ajouter au panier" dans une autre page que la page produit

{if ($product.id_product_attribute == 0 || (isset($add_prod_display) && ($add_prod_display == 1))) && $product.available_for_order && !isset($restricted_country_mode) && !$PS_CATALOG_MODE}
	    {if ($product.allow_oosp || $product.quantity > 0) && $product.customizable != 2}
		 <a class="ajax_add_to_cart_button" rel="ajax_id_product_{$product.id_product|intval}" href="{$link->getPageLink('cart.php')}?add&id_product={$product.id_product|intval}{if isset($static_token)}&token={$static_token}{/if}" title="{l s='Add to cart'}">{l s='cart'}</a>
	    {else}
		  <strike>{l s='Add to cart'}<strike>
	    {/if}
	   {/if}

Link to comment
Share on other sites

  • 4 months later...

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...