Jump to content

albikom

Members
  • Posts

    10
  • Joined

  • Last visited

Profile Information

  • Location
    Albi
  • Activity
    Freelancer

Recent Profile Visitors

3,700,975 profile views

albikom's Achievements

Newbie

Newbie (1/14)

2

Reputation

  1. Hi Benjamin, No, In my cart rule the voucher code box is empty conditions : minimal amount (tax included) : 149 € Country : France i selected 2 carriers Action : Free shipping
  2. Same problem on prestashop 1.5.6. and after step 5 (if you go back on other pages), blockcart and other steps shows correct free shipping.
  3. the position of layered_ajax_loader is defined in this file : modules\blocklayered\blocklayered.js on line 333 (by default) $('#product_list').prepend($('#layered_ajax_loader').html()); you have to replace #product_list by another id For example, you can create an empty div at the end of your blocklayered.tpl (this is the place where you want to load the loader.gif): <div id="loadingzone" style="height:25px;"></div> In this example you have to modify your modules\blocklayered\blocklayered.js like this : $('#loadingzone').prepend($('#layered_ajax_loader').html());
  4. Pour ceux que ça peut intéresser, voilà une solution pour afficher la deuxième image
  5. Salut à tous, grace aux pistes de travail proposées par webaide, j'ai trouvé une solution qui m'a permis de récupérer une image supplementaire du produit dans la product-list : Je ne sais pas si c'est très propre mais ça fonctionne chez moi (prestashop 1.5.3) Tout d'abord j'ai ajouté une fonction à l'override de la classe Category.php . Cette fonction permet d'aller chercher la deuxième image d'un produit (celle en position 2) override/classes/Category.php // récupère l'image en position 2 public function getProductsImgSupp($product_id) { $sql = ' SELECT id_image, id_product from `'._DB_PREFIX_.'image` WHERE id_product="'.$product_id.'" ORDER BY `position` ASC LIMIT 1,1 '; $result = Db::getInstance()->ExecuteS($sql); return $result[0]['id_product'].'-'.$result[0]['id_image']; } Ensuite, j'ai fait un override de la fonction getProductProperties dans la classe Product.php pour y inclure le nom de l'image supplémentaire récupéré par la fonction précédente. c'est juste une ligne à ajouter : $row['id_image2'] = Category::getProductsImgSupp((int)$row['id_product']); Voilà ce que donne la fonction override/classes/Product.php public static function getProductProperties($id_lang, $row, Context $context = null) { if (!$row['id_product']) return false; if ($context == null) $context = Context::getContext(); // Product::getDefaultAttribute is only called if id_product_attribute is missing from the SQL query at the origin of it: // consider adding it in order to avoid unnecessary queries $row['allow_oosp'] = Product::isAvailableWhenOutOfStock($row['out_of_stock']); if (Combination::isFeatureActive() && (!isset($row['id_product_attribute']) || !$row['id_product_attribute']) && ((isset($row['cache_default_attribute']) && ($ipa_default = $row['cache_default_attribute']) !== null) || ($ipa_default = Product::getDefaultAttribute($row['id_product'], !$row['allow_oosp'])))) $row['id_product_attribute'] = $ipa_default; if (!Combination::isFeatureActive() || !isset($row['id_product_attribute'])) $row['id_product_attribute'] = 0; // Tax $usetax = Tax::excludeTaxeOption(); $cache_key = $row['id_product'].'-'.$row['id_product_attribute'].'-'.$id_lang.'-'.(int)$usetax; if (isset($row['id_product_pack'])) $cache_key .= '-pack'.$row['id_product_pack']; if (isset(self::$producPropertiesCache[$cache_key])) return array_merge($row, self::$producPropertiesCache[$cache_key]); // Datas $row['category'] = Category::getLinkRewrite((int)$row['id_category_default'], (int)$id_lang); $row['link'] = $context->link->getProductLink((int)$row['id_product'], $row['link_rewrite'], $row['category'], $row['ean13']); $row['attribute_price'] = 0; if (isset($row['id_product_attribute']) && $row['id_product_attribute']) $row['attribute_price'] = (float)Product::getProductAttributePrice($row['id_product_attribute']); $row['price_tax_exc'] = Product::getPriceStatic( (int)$row['id_product'], false, ((isset($row['id_product_attribute']) && !empty($row['id_product_attribute'])) ? (int)$row['id_product_attribute'] : null), (self::$_taxCalculationMethod == PS_TAX_EXC ? 2 : 6) ); if (self::$_taxCalculationMethod == PS_TAX_EXC) { $row['price_tax_exc'] = Tools::ps_round($row['price_tax_exc'], 2); $row['price'] = Product::getPriceStatic( (int)$row['id_product'], true, ((isset($row['id_product_attribute']) && !empty($row['id_product_attribute'])) ? (int)$row['id_product_attribute'] : null), 6 ); $row['price_without_reduction'] = Product::getPriceStatic( (int)$row['id_product'], false, ((isset($row['id_product_attribute']) && !empty($row['id_product_attribute'])) ? (int)$row['id_product_attribute'] : null), 2, null, false, false ); } else { $row['price'] = Tools::ps_round( Product::getPriceStatic( (int)$row['id_product'], true, ((isset($row['id_product_attribute']) && !empty($row['id_product_attribute'])) ? (int)$row['id_product_attribute'] : null), 2 ), 2 ); $row['price_without_reduction'] = Product::getPriceStatic( (int)$row['id_product'], true, ((isset($row['id_product_attribute']) && !empty($row['id_product_attribute'])) ? (int)$row['id_product_attribute'] : null), 6, null, false, false ); } $row['reduction'] = Product::getPriceStatic( (int)$row['id_product'], (bool)$usetax, (int)$row['id_product_attribute'], 6, null, true, true, 1, true, null, null, null, $specific_prices ); $row['specific_prices'] = $specific_prices; if ($row['id_product_attribute']) $row['quantity_all_versions'] = Product::getQuantity( (int)$row['id_product'], 0, isset($row['cache_is_pack']) ? $row['cache_is_pack'] : null ); else $row['quantity'] = Product::getQuantity((int)$row['id_product']); $row['id_image'] = Product::defineProductImage($row, $id_lang); $row['id_image2'] = Category::getProductsImgSupp((int)$row['id_product']); // image supplémentaire $row['features'] = Product::getFrontFeaturesStatic((int)$id_lang, $row['id_product']); $row['attachments'] = array(); if (!isset($row['cache_has_attachments']) || $row['cache_has_attachments']) $row['attachments'] = Product::getAttachmentsStatic((int)$id_lang, $row['id_product']); $row['virtual'] = ((!isset($row['is_virtual']) || $row['is_virtual']) ? 1 : 0); // Pack management $row['pack'] = (!isset($row['cache_is_pack']) ? Pack::isPack($row['id_product']) : (int)$row['cache_is_pack']); $row['packItems'] = $row['pack'] ? Pack::getItemTable($row['id_product'], $id_lang) : array(); $row['nopackprice'] = $row['pack'] ? Pack::noPackPrice($row['id_product']) : 0; if ($row['pack'] && !Pack::isInStock($row['id_product'])) $row['quantity'] = 0; $row = Product::getTaxesInformations($row, $context); self::$producPropertiesCache[$cache_key] = $row; return self::$producPropertiesCache[$cache_key]; } Maintenant, on peut utiliser cette image supplementaire dans le fichier product-list.tpl <img src="{$link->getImageLink($product.link_rewrite, $product.id_image2, 'home_default')}" alt="{$product.legend|escape:'htmlall':'UTF-8'}" {if isset($homeSize)} width="{$homeSize.width}" height="{$homeSize.height}"{/if} /> N'hésitez pas à proposer des améliorations Pour ma part, je ne voulais pas la deuxième image mais la dernière : override/classes/Category.php public function getProductsImgSupp($product_id) //Récupère la dernière image { $sql = ' SELECT id_image, id_product from `'._DB_PREFIX_.'image` WHERE id_product="'.$product_id.'" ORDER BY `position` DESC LIMIT 0,1 '; $result = Db::getInstance()->ExecuteS($sql); return $result[0]['id_product'].'-'.$result[0]['id_image']; } En espérant que ça aidera
  6. d'accord. merci pour l'info. donc quand les commandes ne remontent "plus" c'est qu'il y a un problème avec l'une des commandes ?
  7. Bonjour, je m'interroge sur la remontée des commande d'ebay vers prestashop, j'ai remarqué que ça n'était pas régulier : - à quel moment a lieu la synchronisation des commande ebay vers prestashop ? - Existe t'il un moyen de "forcer" la récupération des commandes ebay ? merci d'avance
  8. Bonjour, je viens d'activer le module Ebay sur prestashop et je viens de tester l'export de mes articles vers ebay , ça marche nickel (merci à Fabien et tous les contributeurs qui améliorent ce module) . - Tous mes produits ont des déclinaisons - Ces déclinaisons sont des déclinaisons de taille UNIQUEMENT (si j'ai le même produit en 2 couleurs, je créée 2 articles) J'ai remarqué que la galerie d'image Ebay n'était alimentée que par les images principales de mes déclinaisons (cover=1). Dans mon cas (uniquement des déclinaisons de tailles), la galerie Ebay est alimentée par X fois la même image (X varie en fonction des tailles disponibles). Comment alimenter la galerie Ebay avec les images de mon produit (image cover, image 1 , image 2 ...) plutôt qu'avec les images principales de mes déclinaisons ? (comme dans la piece jointe) je suppose que ça se passe par là : // Load Variations Pictures $combinationsImages = $product->getCombinationImages(2); if (isset($combinationsImages) && !empty($combinationsImages) && count($combinationsImages) > 0) foreach ($combinationsImages as $ci) foreach ($ci as $i) $variations[$product->id.'-'.$i['id_product_attribute']]['pictures'][] = $prefix.$link->getImageLink('', $product->id.'-'.$i['id_image'], NULL); j'ai tester quelques modifications sans succès.... Merci
  9. merci pour l'info rastakouere ! je cherchais ce genre de panier depuis qq temps je suis allé voir l'effet sur ton site c'est nickel ! beau travail sans ressusciter Maitre Capello, Originalité ne prend pas de "e" à la fin Pensez originalité
×
×
  • Create New...