Jump to content

(Résolu) Traduction d'une ligne de code


Recommended Posts

Bonjour, 

 

Dans ma boutique Prestashop, sur mon FrontOffice, certains produits sont mises en avant grâce à un module spécifique. Je suis donc allé dans le BackOffice pour traduire le "add to cart" en "ajouter au panier", mais impossible de trouver la ligne correspondante. Je suis donc aller voir dans le code du module en question. Mes connaissance en code étant limitée, voici les seules lignes de code du module dans lequel apparait "add to cart". La question est simple, lequel ou lesquelles je dois changer pour que cela change sur mon FrontOffice.

 

Merci d'avance

 

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

 

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

Bonjour,

 

Tous...

 

Mais le mieux est de passer par la traduction des modules, puis de chercher le module cshomefeatured.

Autre option pour trouver le texte une fois sur la page de traduction, cliquer sur le bouton fermer tous puis ouvrit tous. Ensuite faire Ctrl+F sur la clavier pour rechercher un texte dans la page et taper Add to cart.

 

Bonne journée.

Link to comment
Share on other sites

Merci pour cette réponse rapide,

 

Malheureusement après avoir changer les traductions manuellement, le "add to cart" ne change toujours pas en "ajouter au panier", voici le code du fichier "cshomefeatured.tpl", auriez vous une idée ?

<!-- MODULE Home Featured Products -->
<div id="featured-products_block_center" class="block products_block clearfix" data-animate="fadeInUp" data-delay="100">
	<h4 class="title_block"><span>{l s='Featured products' mod='cshomefeatured'}</span></h4>
	{if isset($products) AND $products}
		<div class="grid_16 alpha left">
			<ul class="block_home_feature">
			{foreach from=$products item=product name=homeFeaturedProducts}
	
				<li class="ajax_block_product {if $smarty.foreach.homeFeaturedProducts.first}first_item{elseif $smarty.foreach.homeFeaturedProducts.last}last_item{else}item{/if}">
					<div class="cs_content">
					<a href="{$product.link}" title="" class="product_image">
					{if $isMobile==1}
					<img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home_default')}" alt="{$product.name|escape:html:'UTF-8'}" />
					
					{else}
						<img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'prod_slider')}" alt="{$product.name|escape:html:'UTF-8'}" />
					
					{/if}
					</a>
					<div class="name_product">
						<h3>
							<a href="{$product.link}" title="{$product.name}">{$product.name|truncate:45:'...'|escape:'htmlall':'UTF-8'}
							</a>
						</h3>
					</div>
						{if $product.show_price AND !isset($restricted_country_mode) AND !$PS_CATALOG_MODE}<p class="price_container"><span class="price">{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span></p>{else}<div style="height:21px;"></div>{/if}
						
						{if ($product.id_product_attribute == 0 OR (isset($add_prod_display) AND ($add_prod_display == 1))) AND $product.available_for_order AND !isset($restricted_country_mode) AND $product.minimal_quantity == 1 AND $product.customizable != 2 AND !$PS_CATALOG_MODE}
							{if ($product.quantity > 0 OR $product.allow_oosp)}
							<a class="exclusive ajax_add_to_cart_button" rel="ajax_id_product_{$product.id_product}" href="{$link->getPageLink('cart')}?qty=1&id_product={$product.id_product}&token={$static_token}&add" title="{l s='Add to cart' mod='cshomefeatured'}">{l s='Add to cart' mod='cshomefeatured'}</a>
							{else}
							<span class="exclusive">{l s='Add to cart' mod='cshomefeatured'}</span>
							{/if}
						{else}
							<div style="height:23px;"></div>
						{/if}
					</div>
				</li>
			{/foreach}
			</ul>
			<a id="home_feature_prev" class="bt prev" href="javascript:void(0)"><</a>
			<a id="home_feature_next" class="bt next" href="javascript:void(0)">></a>
		</div>
	{else}
		<div class="grid_16 alpha block_content">{l s='No featured products' mod='cshomefeatured'}</div>
	{/if}
	<div class="grid_8 omega">
		{if isset($HOOK_HOME_FEATURE_RIGHT) && $HOOK_HOME_FEATURE_RIGHT}{$HOOK_HOME_FEATURE_RIGHT}{/if}
	</div>
</div>
<script type="text/javascript">
$(window).load(function() {
	loadJS();
});
function loadJS()
{
	var n_li=$('.block_home_feature li').length;
	if((n_li>=4 && $(window).width()>767) || (n_li>2 && $(window).width()<=767))
	{
		var wItem=175;
		var sItem=2;
		var dItem=500;
		if($(window).width()<480)
		{
			 wItem=320;
			 sItem=1;
			dItem=300;
		}
	$('.block_home_feature').carouFredSel({
		responsive: true,
		width: '100%',
		height: 'variable',
		onWindowResize: 'debounce',
		prev: '#home_feature_prev',
		next: '#home_feature_next',
		auto: false,
		swipe: {
			onTouch : true
		},
		items: {
			width:wItem,
			height: 'auto',
			visible: {
				min: 1,
				max: 4
			}
		},
		scroll: {
			items:sItem,
			direction : 'left',    
			duration  : dItem  
		}
	});
		$('#home_feature_prev').show();
		$("#home_feature_next").show();
	}
	else
	{
		$('.block_home_feature').trigger("destroy");
		$('#home_feature_prev').hide();
		$("#home_feature_next").hide();
	}
}
</script>
<!-- /MODULE Home Featured Products -->
Link to comment
Share on other sites

Dans le code mentionné, il y a encore des "Add to cart".

Une fois votre fichier modifié et sur le serveur, allez dans Paramètres avancés > Performance

Sélectionné "Forcer la compilation à chaque appel", sauver.

Cliquer le sur bouton "Effacer le cache..."

 

Allez sur votre boutique et le texte devrait avoir changé.

Une fois que c'est bon, remettez l'ancienne valeur pour la compilation.

Edited by SMorillon.com (see edit history)
Link to comment
Share on other sites

J'ai effectué cette opération mais rien en change..

Quand je vais sur mon FrontOffice, et que je fais inspecter l'élément du "add to cart", voici ce qu'il y apparait 

<a class="ajax_add_to_cart_button exclusive" rel="ajax_id_product_87" href="/panier?add=1&id_product=87&token=74ba97dfd731a9b8f1747eba184787e9" title="" onclick="return OnAddclickCategory($(this));">Add to cart</a>
Edited by Franque (see edit history)
Link to comment
Share on other sites

Pouvez-vous nous indiquer l'URL de la page en question pour que l'on puisse regarder ?

 

A première vu, vous modifiez le mauvais fichier : dans le lien coté Front, il y a :

 onclick="return OnAddclickCategory($(this));"

qui n'est pas dans le tpl fournie... (Peux-être un override de ce tpl dans votre template...)

Link to comment
Share on other sites

Je suis sur la version 1.6.0.6


 


Oui dans ce dossier, j'ai plein de fichier :


 


cshometab1.php


cshometab1.tpl


cshometab1_.tpl


itemshow.tpl


itemshow_mobile.tpl


tabclass1.php


config_fr.wml


config.xml


option_1.xml


 


mais aussi des sous-dossiers :


 


css


images


js


translation ( avec un fichier fr.php vide )


views


Link to comment
Share on other sites

Bonjour,

 

Vu que le template est correctement codé pour se qui concerne la traduction, je vous déconseille d'aller bidouiller dedans mais de bie n procéder par les outils de traductions du backoffice.

 

Comme cela ne fonctionne pas, il faut désactiver le cache smarty et l'effacer (et éventuellement forcer temporairement la compilation des templates).

Il faut aussi désactiver le cache interne (tous en bas de cette même page Paramètres avancés  > Performances).

 

Vous devriez alors trouver la chaîne a traduire dans la traduction des modules (coeur et eventuellement pour un theme donné, si il override).

Link to comment
Share on other sites

Modifiez dans tous les fichiers tpl listés les "Add to cart" en "Ajouter au panier"

Merci beaucoup pour votre aide, j'ai changé tous les "add to cart" dans les fichiers tpl et cela fonctionne parfaitement en affichant "Ajouter au Panier".

 

Merci pour votre temps, bonne journée

Link to comment
Share on other sites

Lors de la prochaine mise à jour du module :

La modif sera perdue/a refaire si tu l'as fait dans le module.

Si tu l'as fait dans le thème, il faudra également reprendre le template du module et le remodifier.

 

Methode rapide sur le court terme, lente sur le moyen et long terme.

 

+

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