Jump to content

Tchupa

Members
  • Posts

    646
  • Joined

  • Last visited

Posts posted by Tchupa

  1. Hello,

    j'ai enfin trouvé la solution a mon problème dans le template par défaut de prestashop 1.6.1.etc, je partage pour les personnes qui pourraient rencontrer ce problème a l'avenir.

    Ouvrir le fichier product.tpl

    au tout début du fichier vous avez le code :

    {include file="$tpl_dir./errors.tpl"}
    {if $errors|@count == 0}
    	{if !isset($priceDisplayPrecision)}
    		{assign var='priceDisplayPrecision' value=2}
    	{/if}
    	{if !$priceDisplay || $priceDisplay == 2}
    		{assign var='productPrice' value=$product->getPrice(true, $smarty.const.NULL, 6)}
    		{assign var='productPriceWithoutReduction' value=$product->getPriceWithoutReduct(false, $smarty.const.NULL)}
    	{elseif $priceDisplay == 1}
    		{assign var='productPrice' value=$product->getPrice(false, $smarty.const.NULL, 6)}
    		{assign var='productPriceWithoutReduction' value=$product->getPriceWithoutReduct(true, $smarty.const.NULL)}
    	{/if}

    Remplacer le par:

    {include file="$tpl_dir./errors.tpl"}
    {if $errors|@count == 0}
    	{if !isset($priceDisplayPrecision)}
    		{assign var='priceDisplayPrecision' value=2}
    	{/if}
    	{if !$priceDisplay || $priceDisplay == 2}
    		{assign var='productPrice' value=$product->getPrice(true, $smarty.const.NULL, 2)}
    		{assign var='productPriceWithoutReduction' value=$product->getPriceWithoutReduct(false, $smarty.const.NULL)}
    	{elseif $priceDisplay == 1}
    		{assign var='productPrice' value=$product->getPrice(false, $smarty.const.NULL, 2)}
    		{assign var='productPriceWithoutReduction' value=$product->getPriceWithoutReduct(true, $smarty.const.NULL)}
    	{/if}

     

    Bonne journée à tous.

     

    Tchupa.

  2. Bonjour,

    je rencontre actuellement un problème avec l'affichage des tarifs de certains produits dans les SERPS, en effet google dans son aperçu affiche 5 chiffres avant la virgule.

    Exemple un article coûte 46.90€ TTC dans les résultats de recherche google affiche: 46896,00€ la virgule n'est pas au bon endroit.

    J'ai d'abord pensé a un module mal structurée au niveau des données concernant mais n'ayant rien trouvé de probant j'ai décidé d'effectuer un test en changeant de template.

    Dans un premier temps j'ai repis un template totalement vierge d'une version 1.6 sans effectué aucune modification et aucun changement le problème est toujours là.

    J'ai testé avec un second thème non officile prestashop et le problème disparait. J'en conconlus que le problème se situe dans le theme par défaut de prestashop.

    Voici le code de la partie concerné de mon product.tpl car ce désagrément ne concerne que les fiches produits car j'ai déjà retiré les données stucturées des products-list etc... il ne reste que les fiches produits.

    <p class="our_price_display" itemprop="offers" itemscope itemtype="https://schema.org/Offer">{strip}
    									{if $product->quantity > 0}<link itemprop="availability" href="https://schema.org/InStock"/>{/if}
    									{if $priceDisplay >= 0 && $priceDisplay <= 2}
    										<span id="our_price_display" itemprop="price" content="{$productPrice|floatval}">{convertPrice price=$productPrice}</span>																							
    										{if $tax_enabled  && ((isset($display_tax_label) && $display_tax_label == 1) || !isset($display_tax_label))}
    											{if $priceDisplay == 1} {l s='tax excl.'}{else} {l s='tax incl.'}{/if}
    										{/if}
    										<meta itemprop="priceCurrency" content="{$currency->iso_code}" />
    										{hook h="displayProductPriceBlock" product=$product type="price"}
    									{/if}
    								{/strip}
    								</p>

    Voici l'extrait de code dans la console chrome:

    <span id="our_price_display" itemprop="price" content="46.896">46,90 €</span>

    Si je teste une url dans l'outil google de test des données structurées il lit correctement le content:

    Citation

     

    @type Offer

    availability http://schema.org/InStock

    price 46.896

    priceCurrency EUR

     

     

    Par contre l'aperçu des résultats:

    Citation

     

    Prix

    46 896,00 €

     

     

    Suis je passé a coté de quelque chose ?

    En vous remerciant,

    Tchupa.

  3. Bonjour,

    je vais faire remonter ce poste mais ayant rencontré le problème juste a l'instant sans approfondir mes recherches afin de résoudre et corriger réellement ce problème, ce bug est lié au comportement ajax du panier.

    Lorsqu'on crée une fiche article avec un champ personnalisé obligatoire si le comportement ajax du block panier est activé on est alors dans l'incapacité d'ajouter le produit après avoir enregistré sa personnalisation et le fameux message apparaît:

    "veuillez remplir tous les champs"

    Vous devez donc aller dans les modules du BO et dans la configuration du bloc panier désactiver le comportement ajax.

    A savoir que même sous prestashop 1.6.1.24 on rencontre encore ce problème ....

  4. Salut,

    tu as 2 solutions:

    -soit acheter le thème déjà opti seo et effectuer de grosse modification HTML et CSS pour obtenir ce que tu veux

    -soit acheter un thème qui te plait visuellement et l'optimiser a mort niveau SEO.

    Il y a très peu de chance que tu trouve ton bonheur déjà tout fait car c'est principalement une histoire de goût .

  5. Bonsoir,

    je connais pas de module a ma connaissance qui permets de faire ce genre de chose sur le FO.

    Une solution est de créer en BO la commande frais de transport offert et leur envoyer le lien pour régler la commande.

    Ensuite vous regroupez les deux commandes lors de la préparation du colis.

    Cette méthode est possible sous la 1.6 pour la 1.7 je ne peux vous répondre je ne l'utilise pas.

    Bonne soirée.

    Tchupa.

  6. Le 14/01/2019 à 9:02 AM, visir a dit :

    Bonjour à tous le forum est en Anglais mais je ne peux répondre qu'en français.
    je me débrouille en prestashop...

    J'utilise prestashop 1.7.0.4 et j'ai u un problème similaire au votre j'ai trouvé un début de solution mais pas pour l'importation en csv.

    pour avoir les commande qui ont bénéficiés d'un code de réduction, j'ai modifier mon AdminOdersController (controllers/admin/AdminOrdersController.php) pour y ajouter deux ligne SQL (LEFT JOIN)  suivant :

     

    LEFT JOIN `'._DB_PREFIX_.'order_cart_rule` ocr ON (ocr.`id_order` = a.`id_order`)
    LEFT JOIN `'._DB_PREFIX_.'cart_rule` cr ON (cr.`id_cart_rule` = ocr.`id_cart_rule`)    

    à la ligne 48 et 49 ceci permet de faire communiquer les tables Orders, Order_Cart_Rule et Cart_Rule..... donc juste après le SQL suivant: 

    LEFT JOIN `'._DB_PREFIX_.'customer` c ON (c.`id_customer` = a.`id_customer`)

    en suite, ajouter 

    'code' => array(
        'title' => $this->trans('Code Réduction', array(), 'Admin.Global'),
        'havingFilter' => true,
    ),
    'total_discounts' => array(
        'title' => $this->trans('Total Réduction', array(), 'Admin.Global'),
    ),

     avant 

    'date_add' => array(
        'title' => $this->trans('Date', array(), 'Admin.Global'),
        'align' => 'text-right',
        'type' => 'datetime',
        'filter_key' => 'a!date_add'
    ),

    puis aller dans le back-office "commande>commande" (la page qui liste les commandes) vous obtiendrez les commandes avec code de réduction et montant ...

     

    image.png.d1dcb329abcfd5be6012a8168b20ab36.png

    Si ça vous a aidez, n'oubliez pas de me le faire savoir et si vous n'avez rien compris à ma réponse, faites le moi savoir pour que j'explique mieux

    Bonjour,

    attention pour la version prestashop 1.6 la deuxième partie de code a ajouter est :

    'code' => array(
    			'title' => $this->l('Code Reduction'),
    			'havingFilter' => true,
    			),
    			'total_discounts' => array(
    			'title' => $this->l('Total Reduction'),
    			),

     

  7. Bonjour,

    j'ai trouvé une piste qui m'a permis d'améliorer le chargement des pages concernés, dans le fichier /config/smarty.config.inc.php vers la ligne 32 j'ai remplacé:

    $smarty = new SmartyCustom();

    Par

    $smarty = new Smarty();

    Parce que j'ai remarqué que sa effectué des appels SQL alors que j'utilise le système de fichier pour mon cache.

    Je suis passé sur la même requête (citer juste au dessus dans mon poste précédent) d'un

    SET timestamp=1547710991;

      a

    SET timestamp= 2329.1 ;

    Ce qui est pas mal, mais on peut faire mieux c'est sur.

    Si sa peut aider d'autre personne ;)

    Tchupa.

  8. Bonjour,

    je rencontre actuellement un problème de lenteur sur certaines pages d'une de nos boutiques hébergé sur un même VPS.

    La boutique concerné est en 1.6.1.10 .

    Le cache est activé , ainsi que googlepagespeed sur le vps.

    Cette lenteur est clairement observé lorsqu'on se rend dans une catégorie, une sous catégorie ou même la page nouveaux produits, j'ai l'impression que le problème survient dés qu'on demande au site de lister les produits.

    J'ai donc activer les log des slow_query sql et le profiling et j'ai une requête qui revient tout le temps:

    SET timestamp=1547710991;
    SELECT SQL_NO_CACHE p.*, product_shop.*, stock.out_of_stock, IFNULL(stock.quantity, 0) AS quantity, IFNULL(product_attribute_shop.id_product_attribute, 0) AS id_product_attribute,
    					product_attribute_shop.minimal_quantity AS product_attribute_minimal_quantity, pl.`description`, pl.`description_short`, pl.`available_now`,
    					pl.`available_later`, pl.`link_rewrite`, pl.`meta_description`, pl.`meta_keywords`, pl.`meta_title`, pl.`name`, image_shop.`id_image` id_image,
    					il.`legend` as legend, m.`name` AS manufacturer_name, cl.`name` AS category_default,
    					DATEDIFF(product_shop.`date_add`, DATE_SUB("2019-01-17 00:00:00",
    					INTERVAL 60 DAY)) > 0 AS new, product_shop.price AS orderprice
    				FROM `ps_category_product` cp
    				LEFT JOIN `ps_product` p
    					ON p.`id_product` = cp.`id_product`
    				 INNER JOIN ps_product_shop product_shop
    		ON (product_shop.id_product = p.id_product AND product_shop.id_shop = 1) LEFT JOIN `ps_product_attribute_shop` product_attribute_shop
    				ON (p.`id_product` = product_attribute_shop.`id_product` AND product_attribute_shop.`default_on` = 1 AND product_attribute_shop.id_shop=1)
    				 LEFT JOIN ps_stock_available stock
    			ON (stock.id_product = p.id_product AND stock.id_product_attribute = 0 AND stock.id_shop = 1  AND stock.id_shop_group = 0  )
    				LEFT JOIN `ps_category_lang` cl
    					ON (product_shop.`id_category_default` = cl.`id_category`
    					AND cl.`id_lang` = 2 AND cl.id_shop = 1 )
    				LEFT JOIN `ps_product_lang` pl
    					ON (p.`id_product` = pl.`id_product`
    					AND pl.`id_lang` = 2 AND pl.id_shop = 1 )
    				LEFT JOIN `ps_image_shop` image_shop
    					ON (image_shop.`id_product` = p.`id_product` AND image_shop.cover=1 AND image_shop.id_shop=1)
    				LEFT JOIN `ps_image_lang` il
    					ON (image_shop.`id_image` = il.`id_image`
    					AND il.`id_lang` = 2)
    				LEFT JOIN `ps_manufacturer` m
    					ON m.`id_manufacturer` = p.`id_manufacturer`
    				WHERE product_shop.`id_shop` = 1
    					AND cp.`id_category` = 4392 AND product_shop.`active` = 1 AND product_shop.`visibility` IN ("both", "catalog") ORDER BY cp.`position` ASC
    			LIMIT 0,100;

    Auriez vous une petite idée de l'origine de ce problème ?

    En vous remerciant.

     

    Tchupa.

  9. Bonjour,

    je dois effectuer une modification concernant un fournisseur.

    Actuellement notre boutique prestashop autorise les commandes hors stock dans sa configuration générale, nous voudrions interdire les commandes hors stock pour un fournisseur bien précis.

    A l'heure actuel il faudrait que je reprends fiche article par fiche manuellement mais ce sont des milliers d'articles qui sont concernés.

    J'aurais aimé savoir si quelqu'un avez une solution, je pensais a une requête SQL mais laquel ?

    En vous remerciant.

    Cordialement.

  10. Bonjour,

    Merci Eolia pour le lien vers la solution.

    Par contre juste une petite question si on désactive les appels, j'imagine que les mises a jour des différents module ne seront plus mentionné ?

     

    @Agnès_Ts 

    avez vous suivi le lien et la procédure indiqué par Eolia ? 

     

    Tchupa.

    • Like 1
×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More