Plusieurs Petites Questions V7.1

8 posts in this topic

Posted · Report post

Bonjour,

 

j'ai plusieurs petites questions qui sont les suivantes:

 

1) lorsqu'une catégorie comporte des sous catégorie, mais aucun produit on retrouve en bas de page : Liste des produits
Aucun produit disponible dans cette categorie.

 

peux t-on ne pas faire apparaitre le bloc "liste des produits" lorsqu'il n'y a aucun produit?

 

2) dans le fichier fr.php dans la phrase : ["STR_ASSOCIATED_PRODUCT"] = "Les clients ayant apprécié cet article ont également acheté ...";
j'aimerai remplacer le mot "cet article" par le nom du produit se trouvant sur la page. Je suppose qu'il faut utilisr $product_name mais après de nombreux essais je n'arrive pas a trouver la syntaxe exacte pour que cela fonctionne..

 

3) j'aimerai rajouter le bouton +de details pour les produits s'affichant en page d'accueil juste a gauche du bouton ajouter au panier Je pense qu'il faut reprendre le code suivant:
 

<div><a href="{$href|escape:'html'}" class="btn btn-info btn-sm" title="{$name|str_form_value}">{$more_detail_label}</a></div>

mais je ne trouve pas dans quel fichier .tpl l'insérer et ou pour qu'il s'affiche a gauche du bouton "ajouter au panier"

 

4) concernant les avis clients: les avis s'ouvre dans une nouvelle page, ne serait-il pas judicieux de les faire afficher dans un onglet de catégorie en bas du detail du produit. est ce quelque chose de difficile a mettre en place?

 

merci d'avance pour votre aide.
 

Share this post


: post
Share on other sites

Posted · Report post

Bonjour,

 

1) lorsqu'une catégorie comporte des sous catégorie, mais aucun produit on retrouve en bas de page : Liste des produits
Aucun produit disponible dans cette categorie.

 

peux t-on ne pas faire apparaitre le bloc "liste des produits" lorsqu'il n'y a aucun produit?

=> Il faut utiliser le 9ème paramètre $no_display_if_empty de la fonction affiche_produits.

 

 

 

2) dans le fichier fr.php dans la phrase : ["STR_ASSOCIATED_PRODUCT"] = "Les clients ayant apprécié cet article ont également acheté ...";
j'aimerai remplacer le mot "cet article" par le nom du produit se trouvant sur la page. Je suppose qu'il faut utilisr $product_name mais après de nombreux essais je n'arrive pas a trouver la syntaxe exacte pour que cela fonctionne..

=> Vous pouvez utiliser la fonction sprintf. Dans la variable vous remplacer "cet article" par "%s", et lorsque la variable est utilisé remplacer sprintf($GLOBALS["STR_ASSOCIATED_PRODUCT"], $product_name);. Plus d'info sur cette fonction : http://php.net/manual/fr/function.sprintf.php

 

 

3) j'aimerai rajouter le bouton +de details pour les produits s'affichant en page d'accueil juste a gauche du bouton ajouter au panier Je pense qu'il faut reprendre le code suivant:
<div><a href="{$href|escape:'html'}" class="btn btn-info btn-sm" title="{$name|str_form_value}">{$more_detail_label}</a></div>

mais je ne trouve pas dans quel fichier .tpl l'insérer et ou pour qu'il s'affiche a gauche du bouton "ajouter au panier"

Vous avez configuré a boutique pour afficher l'ajout au panier sur les pages de catégorie ? Dans ce cas, le fichier tpl qui affiche le bloc d'ajout au panier est critere_stock.tpl. Ce fichier est le même qui est utilisé dans les pages produits.

 

 

4) concernant les avis clients: les avis s'ouvre dans une nouvelle page, ne serait-il pas judicieux de les faire afficher dans un onglet de catégorie en bas du detail du produit. est ce quelque chose de difficile a mettre en place?

Vous pouvez ajouter un onglet qui affiche la liste des produits en modifiant le code de la fonction get_produit_details_html sous la ligne if (!empty($product_object->display_tab)) {.

Il faut ajouter la liste des avis dans le tableau $tabs.

Share this post


: post
Share on other sites

Posted · Report post

Bonjour,

 

Merci Simon pour les réponses. Alors voici ou j'en suis:

 

 

1) lorsqu'une catégorie comporte des sous catégorie, mais aucun produit on retrouve en bas de page : Liste des produits

Aucun produit disponible dans cette categorie.

 

peux t-on ne pas faire apparaitre le bloc "liste des produits" lorsqu'il n'y a aucun produit?

=> Il faut utiliser le 9ème paramètre $no_display_if_empty de la fonction affiche_produits.

j'ai trouver se code:

if (empty($results_array)) {
			$tpl->assign('no_results', false);
			if (!$no_display_if_empty) {
				if ($params['mode'] == 'line' || $params['mode'] == 'column') {
					$tpl->assign('no_results_msg', $GLOBALS['STR_NO_INDEX_PRODUCT']);
				} elseif ($params['mode'] == 'general') {
					$tpl->assign('no_results_msg', $GLOBALS['STR_NOT_AVAILABLE_CURRENTLY']);

et j'ai remplacer true par false, ce qui a enlever l'affichage de la phrase "aucun produit dans cette catégorie", cependant l'affichage "listes des produits, le trait sous liste des produits et le menu classer les résultats par, restent afficher. Une idée comment faire pour les enlever de l'affichage lorsqu'il n'y a aucun produit?

 

 

 

2) dans le fichier fr.php dans la phrase : ["STR_ASSOCIATED_PRODUCT"] = "Les clients ayant apprécié cet article ont également acheté ...";

j'aimerai remplacer le mot "cet article" par le nom du produit se trouvant sur la page. Je suppose qu'il faut utilisr $product_name mais après de nombreux essais je n'arrive pas a trouver la syntaxe exacte pour que cela fonctionne..

=> Vous pouvez utiliser la fonction sprintf. Dans la variable vous remplacer "cet article" par "%s", et lorsque la variable est utilisé remplacer sprintf($GLOBALS["STR_ASSOCIATED_PRODUCT"], $product_name);. Plus d'info sur cette fonction : http://php.net/manua...ion.sprintf.php

Ici j'ai compris ce qu'il faut modifier, mais je ne trouve pas le fichier contenant la variable $GLOBALS["STR_ASSOCIATED_PRODUC]. 

 

 

3) j'aimerai rajouter le bouton +de details pour les produits s'affichant en page d'accueil juste a gauche du bouton ajouter au panier Je pense qu'il faut reprendre le code suivant:

<div><a href="{$href|escape:'html'}" class="btn btn-info btn-sm" title="{$name|str_form_value}">{$more_detail_label}</a></div>

mais je ne trouve pas dans quel fichier .tpl l'insérer et ou pour qu'il s'affiche a gauche du bouton "ajouter au panier"

Vous avez configuré a boutique pour afficher l'ajout au panier sur les pages de catégorie ? Dans ce cas, le fichier tpl qui affiche le bloc d'ajout au panier est critere_stock.tpl. Ce fichier est le même qui est utilisé dans les pages produits.

 

j'ai bien trouvé l'endroit ou insérer le code, mais dès que je met le code mentionné ci dessus, j'ai des messages d'erreurs d'affichage...

 

Pour le point 4, je pense demander un developpement, je vais voir avec Sebastien.

Share this post


: post
Share on other sites

Posted · Report post

Bonjour,

 

et j'ai remplacer true par false, ce qui a enlever l'affichage de la phrase "aucun produit dans cette catégorie", cependant l'affichage "listes des produits, le trait sous liste des produits et le menu classer les résultats par, restent afficher. Une idée comment faire pour les enlever de l'affichage lorsqu'il n'y a aucun produit?

Dans le fichier products_list_brief.tpl, vous pouvez déplacer le test {if isset($subcategories)} juste avant {if isset($cat)}, le titre n'apparaitra plus si il n'y a pas de produit.

 

 

Ici j'ai compris ce qu'il faut modifier, mais je ne trouve pas le fichier contenant la variable $GLOBALS["STR_ASSOCIATED_PRODUC].

La variable $GLOBALS["STR_ASSOCIATED_PRODUCT"] est défini dans les fichiers de langue (\lib\lang\fr.php, \lib\lang\en.php, \lib\lang\es.php, etc ...)

 

 

j'ai bien trouvé l'endroit ou insérer le code, mais dès que je met le code mentionné ci dessus, j'ai des messages d'erreurs d'affichage...

Quels sont ces messages ?

Share this post


: post
Share on other sites

Posted · Report post

Bonjour Simon.

 

 

et j'ai remplacer true par false, ce qui a enlever l'affichage de la phrase "aucun produit dans cette catégorie", cependant l'affichage "listes des produits, le trait sous liste des produits et le menu classer les résultats par, restent afficher. Une idée comment faire pour les enlever de l'affichage lorsqu'il n'y a aucun produit?

Dans le fichier products_list_brief.tpl, vous pouvez déplacer le test {if isset($subcategories)} juste avant {if isset($cat)}, le titre n'apparaitra plus si il n'y a pas de produit.

Lorsque je supprime tout le test : {if isset($subcategories)}
    <div class="clearfix"></div>
    {$subcategories}
{/if}

Alors les sous catégorie ne s'affiche plus, mais j'ai toujours le problème titre "liste des produits" avec la barre dessous et le filtre a droite qui s'affiche. Donc cela ne règle pas vraiment mon problème.

 

 

ci j'ai compris ce qu'il faut modifier, mais je ne trouve pas le fichier contenant la variable $GLOBALS["STR_ASSOCIATED_PRODUC].

La variable $GLOBALS["STR_ASSOCIATED_PRODUCT"] est défini dans les fichiers de langue (\lib\lang\fr.php, \lib\lang\en.php, \lib\lang\es.php, etc ...)

Voila ce que j'ai renseigné comme indiqué ci dessus: sprintf($GLOBALS["STR_ASSOCIATED_PRODUCT"], $product_name) = "Les clients ayant apprécié %s ont également acheté ...";

 

mais j'obtiens le message d'erreur suivant: Fatal error: Can't use function return value in write context in /homez.775/cavecham/www/lib/lang/fr.php on line 50

 

merci

Share this post


: post
Share on other sites

Posted · Report post

Bonjour,

 

Lorsque je supprime tout le test : {if isset($subcategories)}
    <div class="clearfix"></div>
    {$subcategories}
{/if}

Attention, il faut déplacer le test, et pas le supprimer. Dans ma note précédente je disais , vous pouvez déplacer le test {if isset($subcategories)} juste avant {if isset($cat)}. Le début du fichier doit ressembler à :

{if isset($subcategories)}
    {if isset($cat)}
    <div>
        {if isset($cat.image)}
        <div style="padding-left:10px; padding-bottom:10px;" class="pull-right"><img alt="{$cat.image.name}" src="{$cat.image.src|escape:'html'}" style="max-height: 110px;" /></div>
        {/if}

 

 

Voila ce que j'ai renseigné comme indiqué ci dessus: sprintf($GLOBALS["STR_ASSOCIATED_PRODUCT"], $product_name) = "Les clients ayant apprécié %s ont également acheté ...";

Dans le fichier fr.php, il faut laisser $GLOBALS["STR_ASSOCIATED_PRODUCT"] = "Les clients ayant apprécié %s ont également acheté ...". C'est lors de l'appel de la variable qu'il faut utiliser sprintf, avec le nom du produit.

Share this post


: post
Share on other sites

Posted · Report post

Concernant le 1er point ci dessus j'obtient une fatale error en mettant le code comme ci dessus:

 

 

Fatal error: Uncaught exception 'SmartyCompilerException' with message 'Syntax Error in template &quot;/homez.775/cavecham/www/modeles/peel7/smarty/products_list_brief.tpl&quot; on line 34 &quot;{$associated_products}&quot; unclosed {if} tag' in /homez.775/cavecham/www/lib/templateEngines/smarty/sysplugins/smarty_internal_templatecompilerbase.php:667 Stack trace: #0 /homez.775/cavecham/www/lib/templateEngines/smarty/sysplugins/smarty_internal_smartytemplatecompiler.php(118): Smarty_Internal_TemplateCompilerBase->trigger_template_error('unclosed {if} t...') #1 /homez.775/cavecham/www/lib/templateEngines/smarty/sysplugins/smarty_internal_templatecompilerbase.php(206): Smarty_Internal_SmartyTemplateCompiler->doCompile('{* Smarty??// T...') #2 /homez.775/cavecham/www/lib/templateEngines/smarty/sysplugins/smarty_internal_template.php(187): Smarty_Internal_TemplateCompilerBase->compileTemplate(Object(Smarty_Internal_Template)) #3 /homez.775/cavecham/www/lib/templateEngines/smarty/sysplugins/smarty_internal_templatebase.php(165 in /homez.775/cavecham/www/lib/templateEngines/smarty/sysplugins/smarty_internal_templatecompilerbase.php on line 667

 

Concernant le deuxième point pour modifier le produit associé: je comprends ce que vous me dite, mais je ne sais pas dans quel fichier l'appel de la variable se fait et vers qu'elle ligne?

 

Merci bcp

Share this post


: post
Share on other sites

Posted · Report post

Bonjour,

 

 

Concernant le 1er point ci dessus j'obtient une fatale error en mettant le code comme ci dessus:

Le message d'erreur indique "Syntax Error in template &quot;/homez.775/cavecham/www/modeles/peel7/smarty/products_list_brief.tpl&quot; on line 34". Vous pouvez regarder à la ligne indiqué, ainsi que les lignes autour pour voir l'erreur.

 

 

Concernant le deuxième point pour modifier le produit associé: je comprends ce que vous me dite, mais je ne sais pas dans quel fichier l'appel de la variable se fait et vers qu'elle ligne?

Le titre des produits associés est créé dans la fonction params_affiche_produits ($titre = $GLOBALS['STR_ASSOCIATED_PRODUCT']; vers la ligne 2017). Par contre il faut récupérer le nom du produit, et définir la variable $product_name qu'il faudra ensuite utiliser dans le sprintf. Vous pouvez utiliser la variable $reference_id qui contient l'id du produit consulté pour récupérer son nom dans la BDD

Share this post


: post
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

Twitter Advisto ecommerce

Facebook PEEL Shopping