Jump to content

Bloc ou onglet accessoire sur la fiche produit manquant


Recommended Posts

Bonjour à tous ! 

 

 

Je ne sais pas où je passe à coté ? Je suis encore novice et en train de mettre en place ma boutique en ligne ! 

 

Je voulais tester l'affichage de produits similaires (bloc accessoire) lorsque l'on est sur une fiche produit. Pour cela, j'ai choisi un produit auquel j'ai affecté 3 références dans accessoires sur le backoffice du produit. Malheureusement je ne vois pas mes 3 références apparaître sur la page du produit alors qu'en faisant des recherches pour essayer de résoudre mon problème je vois que l'onglet accessoire devrait apparaître en bas de ma page ??? 

 

J'ai essayé de regarder dans mes modules si un modules accessoires existait et ne serait pas installé ou configuré, mais rien du tout !! je ne trouve rien !! 

 

Je pense que ce module est natif alors est ce que quelqu'un m'aider ? 

 

Voici le lien vers la page de mon produits au cas ou : http://www.encreservice.orbservice.com/presta/index.php?id_product=3811&controller=product&id_lang=2&search_query=hl127&results=2

 

Voici le code que j'ai trouvé dans product.tpl 

{if isset($accessories) && $accessories}
			<!--Accessories -->
			<section class="page-product-box">
				<h3 class="page-product-heading">{l s='Accessories'}</h3>
				<div class="block products_block accessories-block clearfix">
					<div class="block_content">
						<ul id="bxslider" class="bxslider clearfix">
							{foreach from=$accessories item=accessory name=accessories_list}
								{if ($accessory.allow_oosp || $accessory.quantity_all_versions > 0 || $accessory.quantity > 0) && $accessory.available_for_order && !isset($restricted_country_mode)}
									{assign var='accessoryLink' value=$link->getProductLink($accessory.id_product, $accessory.link_rewrite, $accessory.category)}
									<li class="item product-box ajax_block_product{if $smarty.foreach.accessories_list.first} first_item{elseif $smarty.foreach.accessories_list.last} last_item{else} item{/if} product_accessories_description">
										<div class="product_desc">
											<a href="{$accessoryLink|escape:'html':'UTF-8'}" title="{$accessory.legend|escape:'html':'UTF-8'}" class="product-image product_image">
												<img class="lazyOwl" src="{$link->getImageLink($accessory.link_rewrite, $accessory.id_image, 'home_default')|escape:'html':'UTF-8'}" alt="{$accessory.legend|escape:'html':'UTF-8'}" width="{$homeSize.width}" height="{$homeSize.height}"/>
											</a>
											<div class="block_description">
												<a href="{$accessoryLink|escape:'html':'UTF-8'}" title="{l s='More'}" class="product_description">
													{$accessory.description_short|strip_tags|truncate:25:'...'}
												</a>
											</div>
										</div>
										<div class="s_title_block">
											<h5 class="product-name">
												<a href="{$accessoryLink|escape:'html':'UTF-8'}">
													{$accessory.name|truncate:20:'...':true|escape:'html':'UTF-8'}
												</a>
											</h5>
											{if $accessory.show_price && !isset($restricted_country_mode) && !$PS_CATALOG_MODE}
											<span class="price">
												{if $priceDisplay != 1}
													{displayWtPrice p=$accessory.price}
												{else}
													{displayWtPrice p=$accessory.price_tax_exc}
												{/if}
												{hook h="displayProductPriceBlock" product=$accessory type="price"}
											</span>
											{/if}
											{hook h="displayProductPriceBlock" product=$accessory type="after_price"}
										</div>
										<div class="clearfix" style="margin-top:5px">
											{if !$PS_CATALOG_MODE && ($accessory.allow_oosp || $accessory.quantity > 0) && isset($add_prod_display) && $add_prod_display == 1}
												<div class="no-print">
													<a class="exclusive button ajax_add_to_cart_button" href="{$link->getPageLink('cart', true, NULL, "qty=1&id_product={$accessory.id_product|intval}&token={$static_token}&add")|escape:'html':'UTF-8'}" data-id-product="{$accessory.id_product|intval}" title="{l s='Add to cart'}">
														<span>{l s='Add to cart'}</span>
													</a>
												</div>
											{/if}
										</div>
									</li>
								{/if}
							{/foreach}
						</ul>
					</div>
				</div>
			</section>
			<!--end Accessories -->
		{/if}

Je vous remercie bien par avance,

Olivier

 

 

 

 

Link to comment
Share on other sites

Bonjour,

 

La balise est bien présente dans la page produit mais vide. Je regarderai en BO du côté du catalogue si les accessoires sont bien visibles.

<h3 class="page-product-heading">Produits similaires ou compatibles</h3><div class="block products_block accessories-block clearfix"><div class="block_content"><ul id="bxslider" class="bxslider clearfix"></ul></div></div> </section> <section class="page-product-box">
  • Like 1
Link to comment
Share on other sites

Bonjour Carlito,

 

Sympa de t'intéresser à mon problème ! Ok je crois avoir fait tous les menus de catalogue dans BO et à part dans la fiche produit je ne vois rien concernant les accessoires et leur visibilité ! 

 

Ce qui sur c'est que j'ai bien rentrer des produits dans accessoire de mon produit ! quand je tape le début d'une ref il me propose des ref existante, je les sélectionne et elles s'ajoutent correctement ! Mais après rien en front office !

 

 Par contre j'ai remarqué que lorsque ma connexion est lente (je suis à madagascar) au moment ou ma page charge (après un refresh) j'ai l'onglet qui apparaît mais à la fin du chargement il disparaît ! Et je ne vu aucun produits des accessoires charger ! 

 

Je ne sais pas si c'est très clair ce que je raconte ?!

Link to comment
Share on other sites

  • 2 weeks later...

Oui c'est ça.

 

Sur une boutique, j'ai eu des accessoires qui ne s'affichaient pas car ils étaient simplement désactivés ou alors "non disponible à la vente"

 

Deuxième piste, la page product.tpl à vérifier. Éventuellement sauvegarder celle-ci et remplacer par le fichier d'origine.

Link to comment
Share on other sites

Bonjour Carlito,

 

Effectivement la bonne réponse est "disponible à la vente" !!!!! Si ce n'est pas coché dans back office du produits les accessoires ne s'affichent pas ! Donc mon problème est en partie résolu car pour le moment je ne souhaite pas que les clients puissent commander et ajouter des produits au panier c'est pour cela que je ne les active pas à la vente !

 

Donc maintenant, y a t'il moyen de les faire apparaître comme accessoire sans qu'ils soient disponibles à la vente ou une autre solution peut être ?

 

Merci beaucoup de m'avoir permis d'avancer !

Link to comment
Share on other sites

N'y a t'il pas moyen d'afficher les produits accessoires même si ils ne sont pas disponibles à la vente, en modifiant un fichier ? genre le product.tpl dans le code ci-dessous, moi j'y connait rien :( 

			<!--Accessories -->
			<section class="page-product-box">
				<h3 class="page-product-heading">{l s='Accessories'}</h3>
				<div class="block products_block accessories-block clearfix">
					<div class="block_content">
						<ul id="bxslider" class="bxslider clearfix">
							{foreach from=$accessories item=accessory name=accessories_list}
								{if ($accessory.allow_oosp || $accessory.quantity_all_versions > 0 || $accessory.quantity > 0) && $accessory.available_for_order && !isset($restricted_country_mode)}
									{assign var='accessoryLink' value=$link->getProductLink($accessory.id_product, $accessory.link_rewrite, $accessory.category)}
									<li class="item product-box ajax_block_product{if $smarty.foreach.accessories_list.first} first_item{elseif $smarty.foreach.accessories_list.last} last_item{else} item{/if} product_accessories_description">
										<div class="product_desc">
											<a href="{$accessoryLink|escape:'html':'UTF-8'}" title="{$accessory.legend|escape:'html':'UTF-8'}" class="product-image product_image">
												<img class="lazyOwl" src="{$link->getImageLink($accessory.link_rewrite, $accessory.id_image, 'home_default')|escape:'html':'UTF-8'}" alt="{$accessory.legend|escape:'html':'UTF-8'}" width="{$homeSize.width}" height="{$homeSize.height}"/>
											</a>
											<div class="block_description">
												<a href="{$accessoryLink|escape:'html':'UTF-8'}" title="{l s='More'}" class="product_description">
													{$accessory.description_short|strip_tags|truncate:25:'...'}
												</a>
											</div>
										</div>
										<div class="s_title_block">
											<h5 class="product-name">
												<a href="{$accessoryLink|escape:'html':'UTF-8'}">
													{$accessory.name|truncate:20:'...':true|escape:'html':'UTF-8'}
												</a>
											</h5>
											{if $accessory.show_price && !isset($restricted_country_mode) && !$PS_CATALOG_MODE}
											<span class="price">
												{if $priceDisplay != 1}
													{displayWtPrice p=$accessory.price}
												{else}
													{displayWtPrice p=$accessory.price_tax_exc}
												{/if}
												{hook h="displayProductPriceBlock" product=$accessory type="price"}
											</span>
											{/if}
											{hook h="displayProductPriceBlock" product=$accessory type="after_price"}
										</div>
										<div class="clearfix" style="margin-top:5px">
											{if !$PS_CATALOG_MODE && ($accessory.allow_oosp || $accessory.quantity > 0) && isset($add_prod_display) && $add_prod_display == 1}
												<div class="no-print">
													<a class="exclusive button ajax_add_to_cart_button" href="{$link->getPageLink('cart', true, NULL, "qty=1&id_product={$accessory.id_product|intval}&token={$static_token}&add")|escape:'html':'UTF-8'}" data-id-product="{$accessory.id_product|intval}" title="{l s='Add to cart'}">
														<span>{l s='Add to cart'}</span>
													</a>
												</div>
											{/if}
										</div>
									</li>
								{/if}
							{/foreach}
						</ul>
					</div>
				</div>
			</section>
			<!--end Accessories -->

Merci si quelqu'un a une idée !

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

Voilà j'ai trouvé une solution si ça peut servir ! 

 

Modifier  dans votre fichier product.tpl (de votre theme) par défaut (PS 1.6.1.11) ci-dessous dans la zone <!--Accessories -->  :

<!--Accessories -->
			<section class="page-product-box">
				<h3 class="page-product-heading">{l s='Accessories'}</h3>
				<div class="block products_block accessories-block clearfix">
					<div class="block_content">
						<ul id="bxslider" class="bxslider clearfix">
							{foreach from=$accessories item=accessory name=accessories_list}
								{if ($accessory.allow_oosp || $accessory.quantity_all_versions > 0 || $accessory.quantity > 0) && $accessory.available_for_order && !isset($restricted_country_mode)}
									{assign var='accessoryLink' value=$link->getProductLink($accessory.id_product, $accessory.link_rewrite, $accessory.category)}
									<li class="item product-box ajax_block_product{if $smarty.foreach.accessories_list.first} first_item{elseif $smarty.foreach.accessories_list.last} last_item{else} item{/if} product_accessories_description">
										<div class="product_desc">

Remplacez la ligne suivante :

 

{if ($accessory.allow_oosp || $accessory.quantity_all_versions > 0 || $accessory.quantity > 0) && $accessory.available_for_order && !isset($restricted_country_mode)}

 

Par :

 

{if ($accessory.allow_oosp) && !isset($restricted_country_mode)}

 

Ceci vous permettra d'afficher vos accessoires quelque soit si ils sont disponibles à la vente ou pas et si ils sont présents en stock ou pas !! Perso j'utilise les accessoires que j'ai renommé dans les traductions en "produits compatibles" !

  • Like 1
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...