
deezerboy
Members-
Posts
6 -
Joined
-
Last visited
deezerboy's Achievements
Newbie (1/14)
0
Reputation
-
Category list : la deuxieme image du produit au survol
deezerboy replied to DPOD's topic in PrestaShop pour les développeurs
Merci beaucoup Albikom pour ces fonctions, ça marche très bien sous 1.5.4.1. Juste une chose à préciser, bien entendu si vous overridez les fichiers classes, n'oubliez pas de mettre les bonnes déclarations d'usage : class Product extends ProductCore { public static function getProductProperties($id_lang, $row, Context $context = null) { .... } } Pour Product.php et pour Category.php : class Category extends CategoryCore { public function getProductsImgSupp($product_id) { ..... } } -
Bonjour, Bon j'ai compris que vous êtes off et vous souhaite de bonnes vacances, je comprends votre point de vue. Pour info, j'ai trouvé une "solution détournée" en remplaçant fancybox par colorbox et en remplaçant le carousel presta de base par Jcarousel. Ce qui est certain c'est qu'en l'état, si vous tentez d'afficher la div cachée sur la page produit, les flèches ne fonctionnent pas, donc dans la pop up non plus. J'ai tenté d'intégrer jcarousel, ça marche bien dans la div qui est dans la page produit, mais une fois ouvert dans la pop up fancybox,ça ne fonctionne pas non plus. J'ai toujours pas compris le problème, c'est peut être tout simplement un conflit... mais je vois pas d'ou ça vient... J'ai pas encore testé avec tous les scrolls (accessoires, crosselling, ...) en même temps, mais en toute logique ça devrait fonctionner. Pour ceux que ça intéresse, dans les grandes lignes il faut : 1 - télécharger jcarousel, télécharger colorbox 2 - remplacer les appels correspondants dans les fichiers blockcartpremium.php pour jcarousel public function hookHeader() { if (Configuration::get('PS_CATALOG_MODE')) return; Tools::addCSS(($this->_path).'css/blockcart.css', 'all'); Tools::addCSS(($this->_path).'skins/tango/skin.css', 'all'); Tools::addJS(($this->_path).'js/ajax-cart.js'); Tools::addJS(($this->_path).'js/script-cart.js'); Tools::addJS(($this->_path).'js/jquery.jcarousel.js'); } et créer un override de la classe ProductController afin d'appeler les fichiers de colorbox (css/js) <?php class ProductController extends ProductControllerCore { public function setMedia() { parent::setMedia(); Tools::addCSS(_THEME_CSS_DIR_.'product.css'); Tools::addCSS(_PS_CSS_DIR_.'colorbox.css', 'screen'); Tools::addJS(array( _PS_JS_DIR_.'jquery/jquery.colorbox.js', _PS_JS_DIR_.'jquery/jquery.idTabs.modified.js', _PS_JS_DIR_.'jquery/jquery.scrollTo-1.4.2-min.js', _PS_JS_DIR_.'jquery/jquery.serialScroll-1.2.2-min.js', _THEME_JS_DIR_.'tools.js', _THEME_JS_DIR_.'product.js')); if (Configuration::get('PS_DISPLAY_JQZOOM') == 1) { Tools::addCSS(_PS_CSS_DIR_.'jqzoom.css', 'screen'); Tools::addJS(_PS_JS_DIR_.'jquery/jquery.jqzoom.js'); } } } 3 - modifier le blockcartpremium.tpl afin de changer l'id des listes <ul (<ul id="mycarousel" class="jcarousel-skin-tango" par exemple) <div id="cart_productscategory_list"> <ul id="mycarousel" class="jcarousel-skin-tango" style="width: {math equation="width * nbImages" width=107 nbImages=$categoryProducts|@count}px;"> {foreach from=$categoryProducts item='categoryProduct' name=categoryProduct} <li> 4 - et dans scriptcart.js modifier : function confirm(){ $.fancybox( document.getElementById("quick").innerHTML , { 'autoDimensions' : false, 'width' : width_pop, //450 'height' : 'auto', 'transitionIn' : 'none', 'transitionOut' : 'none' } ); } par function confirm(){ $.colorbox({open:true,inline:true,href:"#quick",width:width_pop }); }; Bon j'ai pas récupérer les valeurs de width, etc... mais ça s'intègre facilement, voir la doc de colorbox. Bien entendu il vous faudra encore faire une modification lourde de CSS afin d'adapter ce code à votre template. Et également modifier la fonction de fermeture de la box en adaptant cette fonction : function close_fancybox(){ C'est radical, mais ça fonctionne En attendant d'avoir mieux.... plus clean, etc... Cordialement,
-
Bonjour, Merci pour votre intervention. J'utilise pour info le thème par défaut de Prestashop, modifié certes, mais très légèrement, c'est surtout de la modification TPL et CSS, je touche très peu au PHP ou au Javascript. Pour info, le module permettant d'afficher les produits de la même catégorie est activé, cependant je n'utilise pas la fonction slideshow de celui ci, les produits sont listés les uns à la suite des autres. Mais ce qui est sûr, c'est que l'effet slideshow de ce module fonctionnait correctement, et c'est le même code que celui de votre module, vous récupérez les fonctions existantes, ce qui est très bien en terme d'optimisation, mais je pense qu'il y a soit un conflit quelque part (cependant aucune erreur notable en console), soit une donnée qui n'est pas passée ou bloquée et qui fait que le slideshow ne peut fonctionner correctement. Le soucis n'est pas au niveau de ma boutique, sur votre site demo, le slideshow produits dans la pop up ne fonctionne pas non plus. On peut cliquer sur suivant ou précédent, rien ne se passe (Firefox ou Chrome, le comportement est identique). Ce n'est certes pas exactement le même comportement que sur mon site, n'est ce n'est pas non plus concluant N'ayant pas développé le module, ça rend le debugage compliqué, donc je pense essayer d'intégrer un autre effet pour le slideshow et voir si j'ai plus de chance... ça m'aiderait peut être à comprendre pourquoi cela ne fonctionne pas. Mais je pense que le problème vient des variables et qu'elles fonctionnent "mal" dans une pop up... Donc c'est pour ça que je parle plutôt de pistes car j'y ai déjà passé pas mal d'heures à essayer de comprendre... Et je serais heureux de pouvoir apporter une solution concrète à tout le monde du moins pour le slideshow des produits, car hormis cela, le module fonctionne très bien sous la dernière version de Prestashop avec le template par défaut. Cordialement,
-
Bonjour, Et merci pour ce super module ! Vraiment agréable et bien pensé. Je teste avec la version 0.7 sous PrestaShop™ 1.4.8.2 et Firefox 14.0.1 (sous Chrome ça ne fonctionne pas du tout). Et comme l'utilisateur précédent les flèches du scroll produits de la même catégorie s'affichent, mais au click, les flèches disparaissent. Leur valeur d'opacité passe à "0" simultanément et la liste produits ne scroll pas. Il semble que la variable : cs_serialScrollNbImages est à zéro malgré le fait qu'on ait par exemple 15 produits car en mettant une alerte sur cette valeur au click, cela renvoie "0". Donc visiblement, s'il n'a pas la longueur, les flèches n'ont pas lieu d'être. Cependant même en forçant la valeur de cs_serialScrollNbImages à 15 en dur par exemple, ça ne change rien au problème... Si quelqu'un à une super piste... je suis preneur!
-
Bon un pti up... Pour les devises, la solution est radicale... Je retire tout et ne laisse plus que l'euro. C'est sûrement l'arrondit, mais c'est tout de même bizarre d'avoir un calcul "faux" dans le panier selon la devise choisie. Concernant l'ordre de tri du panier, c'est toujours l'impasse, bref j'ai vu que sur la version demo en ligne de prestashop, on a bien ce soucis, c'est tout de même assez incohérent comme façon de procéder. Donc je vais pas faire un bug tracker sur une question de logique... et non d'un problème technique réel. Bon si je trouve pas vraiment de clef à ce soucis, je vais essayer d'autres solutions parce que, c'est sûrement du détail certes mais ça gâche un peu le plaisir au final malgré l'excellent travail de dev qui a été réalisé par l'équipe sur cette solution... enfin je comprends pas que ça dérange que moi... *** mode calimero ON ***
-
Bonjour à tous, J'ai deux petits soucis sur l'avant dernière version de Prestashop. Le premier concerne l'ordre de tri des produits sur la page panier(order.php), en effet lorsque vous ajoutez deux produits et que vous augmentez la quantité de l'un d'eux, le produit joue à saute mouton et va se placer directement fin de liste car il est considéré comme "nouveau", je trouve que c'est un peu déconcertant pour l'utilisateur qui veut ajouter 10 fois le même article dans son recap panier, c'est un jeu de patience... J'ai remarqué que sur la version demo de Prestashop on a bien ce comportement mais pas sur des shops comme : http://secretsdeloly.com par exemple... j'ai cherché partout dans les fichiers order.php, card.php une ligne indiquant l'ordre de tri, type ORDER_BY mais rien ne m'a sauté aux yeux, enfin pas pour de la rustine rapide Aussi j'ai un autre soucis, concernant le total par ligne de produit dans la page panier (je n'utilise pas le block panier) selon les devises sélectionnées. Exemple : 2.50 X 2 = 4.98usd au lieu de 5usd , la différence est infime mais tout de même... on perd de l'argent à la fin. En désactivant la gestion des taxes dans l'admin et en ressaisissant le prix exact du produit dans le catalogue (celui ci était mal arrondit sur la fiche produit à cause du calcul des taxes), le problème s'est résolu pour les euros et les livres. Mais pour les dollars... Le problème subsiste, c'est totalement illogique. J'ai cherché partout sur google et sur le forum, mais là je dois dire que je me sens très seul ce soir ) Donc si quelqu'un a déjà rencontré ce genre de problématique, je ne serais pas contre un petit partage d'expérience... Merci !