Jump to content

bpascal81

Members
  • Posts

    25
  • Joined

  • Last visited

About bpascal81

  • Birthday 07/01/1976

Profile Information

  • Location
    France
  • Activity
    Web development agency

bpascal81's Achievements

Newbie

Newbie (1/14)

0

Reputation

  1. @matrix007 a tu trouver la solution a votre problème car j'ai le même souci. Impossible de changer de déclinaison avec ce thème Je peux avoir toute les sortes de choix (liste déroulante, bouton radio, ...) mais je n'arrive pas a sélectionner un autre produit que la déclinaison de basse Avez vous trouvez la solution si oui pouvez vous me l'expliquer Merci d'avance pour votre raiponces
  2. Ok merci pour l'information je ferai pour mes prochaine modif là je ne fais pas les modif en overrides
  3. Je vais vous expliquer ce que j'ai fais pour avoir le résultat voulu au début il faut greffer le module vidéo à displayProductTab pour qu'il s'affiche dans le menu voulu après on modifie le fichier product.tpl comme sur ce tuto (oui j'ai pas tout fais tout seul) après on va continuer dans les modif du même fichier, on cherche <!-- description and features --> on remplace par ce code tout ce qui est au début du code <!-- description and features --> {if (isset($product) && $product->description) || (isset($features) && $features) || (isset($accessories) && $accessories) || (isset($result) && $result->title) || (isset($HOOK_PRODUCT_TAB) && $HOOK_PRODUCT_TAB) || (isset($attachments) && $attachments) || isset($product) && $product->customizable || isset($result) && $result->publicTitle} <div id="more_info_block" class="clear"> <ul id="more_info_tabs" class="idTabs idTabsShort clearfix"> {if $product->description}<li><a id="more_info_tab_more_info" href="#idTab1">{l s='More info'}</a></li>{/if} {if $features}<li><a id="more_info_tab_data_sheet" href="#idTab2">{l s='Data sheet'}</a></li>{/if} {if $attachments}<li><a id="more_info_tab_attachments" href="#idTab9">{l s='Download'}</a></li>{/if} {if isset($accessories) AND $accessories}<li><a href="#idTab4">{l s='Accessories'}</a></li>{/if} {if isset($product) && $product->customizable}<li><a href="#idTab10">{l s='Product customization'}</a></li>{/if} {if $HOOK_PRODUCT_TAB}<li><a href="#idTab10">{l s='video'}</a></li>{/if} </ul> <div id="more_info_sheets" class="sheets align_justify"> <!-- Customizable video --> {if isset($HOOK_PRODUCT_TAB)} <ul id="idTab10" class="bullet"> {$HOOK_PRODUCT_TAB_CONTENT} </ul> {/if} si vous regarder bien on ajoute un bouton hook_product_tab et on regarde si on a une variable pour afficher ou non En suite on va modifier le fichier product.php pour y ajouter ce code avant le dernier } public $widthVideo; public $heightVideo; public $titleVideo; public $link; public $publicTitle; public $desc; public $className; public $anchorName; public static $definitionVideo = array( 'table' => 'opartproductvideo', 'primary' => 'id_opartproductvideo', 'multilang' => true, 'fields' => array( 'width' => array('type' => self::TYPE_INT, 'validate'=>'isInt','required' => true), 'height' => array('type' => self::TYPE_INT, 'validate'=>'isInt','required' => true), 'titleVideo' => array('type' => self::TYPE_STRING, 'validate' => 'isGenericName', 'required' => true, 'size' => 256), 'className' => array('type' => self::TYPE_STRING, 'validate' => 'isGenericName', 'required' => false, 'size' => 256), 'anchorName' => array('type' => self::TYPE_STRING, 'validate' => 'isGenericName', 'required' => false, 'size' => 256), // Lang fields 'link' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate'=> 'isUrl', 'required' => true ), 'publicTitle' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate'=> 'isGenericName', 'required' => false ), 'desc' => array('type' => self::TYPE_HTML, 'lang' => true, 'validate'=> 'isString', 'required' => false ) ), ); public function getProductsVideo($associated = true, Context $context = null) { if (!$context) $context = Context::getContext(); $id_lang = $this->id_lang ? $this->id_lang : $context->language->id; if (!$this->id && $associated) return array(); $in = $associated ? 'IN' : 'NOT IN'; $sql=' SELECT pl.name,pl.id_product FROM `'._DB_PREFIX_.'product` p LEFT JOIN `'._DB_PREFIX_.'product_lang` pl ON p.id_product = pl.id_product'.Shop::addSqlRestrictionOnLang('pl').' '.Shop::addSqlAssociation('product', 'p').' WHERE pl.id_lang = '.(int)$id_lang.' AND product_shop.active = 1 '.($this->id ? ('AND p.id_product '.$in.' (SELECT op.id_product FROM `'._DB_PREFIX_.'opartproductvideo_product` op WHERE op.id_opartproductvideo = '.(int)$this->id.')') : '').' ORDER BY pl.name '; return Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($sql); } public function setProducts($array) { $result = Db::getInstance()->execute('DELETE FROM '._DB_PREFIX_.'opartproductvideo_product WHERE id_opartproductvideo = '.(int)$this->id); if (is_array($array)) { $array = array_map('intval', $array); $result &= ObjectModel::updateMultishopTable('Product', array('indexed' => 0), 'a.id_product IN ('.implode(',', $array).')'); $ids = array(); foreach ($array as $id_product) $ids[] = '('.(int)$id_product.','.(int)$this->id.')'; if ($result) { $result &= Db::getInstance()->execute('INSERT INTO '._DB_PREFIX_.'opartproductvideo_product (id_product, id_opartproductvideo) VALUES '.implode(',', $ids)); if (Configuration::get('PS_SEARCH_INDEXATION')) $result &= Search::indexation(false); } } return $result; } public function getVideoByProduct($idProd,$id_lang) { $sql=' SELECT v.title,v.width,v.height,v.className,v.anchorName,vl.link,vl.desc,vl.publicTitle FROM `'._DB_PREFIX_.'opartproductvideo_product` vp, `'._DB_PREFIX_.'opartproductvideo` v LEFT JOIN `'._DB_PREFIX_.'opartproductvideo_lang` vl ON v.id_opartproductvideo = vl.id_opartproductvideo WHERE vl.id_lang = '.(int)$id_lang.' AND vp.id_product='.$idProd.' AND vp.id_opartproductvideo = v.id_opartproductvideo ORDER BY v.id_opartproductvideo '; return Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($sql); } public function setProductsVideo($array) { $result = Db::getInstance()->execute('DELETE FROM '._DB_PREFIX_.'opartproductvideo_product WHERE id_opartproductvideo = '.(int)$this->id); if (is_array($array)) { $array = array_map('intval', $array); $result &= ObjectModel::updateMultishopTable('Product', array('indexed' => 0), 'a.id_product IN ('.implode(',', $array).')'); $ids = array(); foreach ($array as $id_product) $ids[] = '('.(int)$id_product.','.(int)$this->id.')'; if ($result) { $result &= Db::getInstance()->execute('INSERT INTO '._DB_PREFIX_.'opartproductvideo_product (id_product, id_opartproductvideo) VALUES '.implode(',', $ids)); if (Configuration::get('PS_SEARCH_INDEXATION')) $result &= Search::indexation(false); } } return $result; } public function getVideoInfo($url=false){ $url=($url!=false)?$url:$this->link; if(preg_match("/youtube/i",$url)) return "youtube"; else if(preg_match("/dailymotion/i",$url)) return "dailymotion"; else if(preg_match("/vimeo/i",$url)) return "vimeo"; } public function getYoutubeId($url=false) { $url=($url!=false)?$url:$this->link; return substr($url, strpos($url,"v=")+2,strlen($url)); } public function getDailymotionId($url=false) { $url=($url!=false)?$url:$this->link; return substr($url, strpos($url,"video/")+6,strpos($url,"_")); } public function getVimeoId($url=false) { $url=($url!=false)?$url:$this->link; return substr($url, strpos($url,"vimeo.com/")+10,strlen($url)); } reste plus cas modifier le fichier opartproductvideo.tpl pour masquer le titre de la vidéo si comme moi vous ne le voulait pas on supprime le h2 et h3 Voilà le tour est jouer Si vous voulez d'autre informations je reste a votre service Un grand merci a manit4c pour toutes les informations
  4. Voilà c'est fait en test sur mon site vous pouvez voir le résultat ici Je mes le code au propres et je vous le partage avec ce qu'il faut faire
  5. Bonjour Hier j'ai un peux avancer dans le bon sans, j'ai déjà placer le module où je le voulais dans le back office, ce qui m'a mi le bouton où je le veux, mais en gardent dans le hook maintenant me rest plus cas afficher le contenue du hook ce qu'il ne me fait pas mais je suis sur le bon chemin Tes informations mon bien aider quand j'ai trouver la solution je ferai un retour de toute mes manipulations pour d'autres ça peux servire La je vais regarder pourquoi je n'ai pas d'affichage du contenue Merci pour tes raiponces Pascal
  6. en rentrant isset($result) && $result->title je n'ai rien qui ressort rien pas d'erreur ni de bouton et pour le fichier opartproductvideo_15.tpl j'ai presque la même chose que dans le opartproductvideo.tpl à une ligne près J'ai tester plusieur solution et rien ne ce fait voilà une parti des modif que j'ai fais <!-- description and features --> {if (isset($product) && $product->description) || (isset($features) && $features) || (isset($accessories) && $accessories) || (empty(array(definitionVideo))) || (isset($result) && $result->a.id_product) || (isset($attachments) && $attachments) || (isset($product) && $product->customizable) || (isset($result) && $result->publicTitle)} <div id="more_info_block" class="clear"> <ul id="more_info_tabs" class="idTabs idTabsShort clearfix"> {if $product->description}<li><a id="more_info_tab_more_info" href="#idTab1">{l s='More info'}</a></li>{/if} {if $features}<li><a id="more_info_tab_data_sheet" href="#idTab2">{l s='Data sheet'}</a></li>{/if} {if $attachments}<li><a id="more_info_tab_attachments" href="#idTab9">{l s='Download'}</a></li>{/if} {if isset($accessories) AND $accessories}<li><a href="#idTab4">{l s='Accessories'}</a></li>{/if} {if isset($product) && $product->customizable}<li><a href="#idTab10">{l s='Product customization'}</a></li>{/if} {if isset($result) && $result->a.id_product}<li><a id="more_info_tab_more_info" href="#idTabOpartProducVideo">{l s='VIDEO'}</a></li>{/if} {$HOOK_PRODUCT_TAB} </ul> Sans compter que j'ai mi le ficher video.php dans le fichier product.php pour voir mais ça change rien Merci de vos raiponces
  7. En fin de compte je veux que quand on affiche un produit au lieu que toutes les description s'affiche sous forme de liste on ai un genre de menu horizontal (jusqu'a là rien de compliquer) mais je veux aussi que les vidéo s'affiche sur le même "menu" pas comme actuellement sur mon site exemple d'affichage Et après je veux pas que la div où il y a l'affichage du contenue du menu sois masquer au chargement de la page. Pour avoir un chargement plus rapide Donc j'ai déjà sur mon site local modifier l'affichage des div mais je ne trouve pas la variable qui va vérifier si il y a une vidéo pour afficher ou pas le bouton du même nom. J'ai modifier le fichier product.tpl et product.php pour interrogé la base de donnée où son stocker les vidéos Merci d'avance pour ta raiponce Pascal
  8. Bonjour, je peux pas mettre de lien vers le souci vu que je test en local avant de mettre sur site en production. Le problème viens du fait que le module vidéo est chargé par le hook donc il faut modifier le fichier production.tpl pour charger les informations du module comme on veux sur la page produit. J'ai déjà isolé le problème la je cherche à récupéré la variable qui dit au .tpl qu'il doit afficher ou pas le bouton vidéo vu que je n'ai pas forcément une vidéo sur chaque produit. Donc si tu avait la valeur du isset($ ressult) que je dois vérifié me serai bien pratique. Ton module fonctionne bien c'est juste une configuration du thème qu'il faut faire pour avoir à la sortie un affichage propre Merci pour ta réponse
  9. Je suis entrain de modifier le code pour que cela s'affiche correctement des que j'ai trouver toutes les modification je vous le fais savoir
  10. Bonjour, Très bon module qui fonctionne très bien dans le 1.6.0.11 Mais (et oui y a un mais ) quand j’installe le module sur un prestashop test et que je veux afficher tout les catégories (savoir plus, caractéristiques, et autre) sur la même ligne les vidéo reste en dessous impossible de trouver comment faire pour que cela marche PS: théme de basse pas tester sur un théme autre Merci de vos raiponces
  11. Bonjour, J'ai recherché une solution j'ai modifier le fichier product.tpl de mon thème comme sur l'image qui suis J'ai mi toutes les différentes catégorie qui s'affiche a l'ouverture du produit jusqu'a la tout ce passe presque bien ... Voilà ma question je voudrai vérifier si il y a quelque chose a afficher dans les fiches techniques ou un autre bouton si il y a le bouton s'affiche et sinon il est masqué. Mais je ne sais pas sur quel table je dois regarder l'information ? Pour la vidéo car sur mon site réel j'ai des vidéo mes pas sur tout mes produit je veux filtrer mes la ces un modules extérieur est je ne sais pas comment modifier l'appel de base pour aller prendre juste la vidéo et pas tout le cadre que j'affiche ou pas. Merci d'avance pour vos informations Pascal
  12. Bonjour, Voila j'ai trouver un site https pour la protection des mineurs au lieu de réécrire le https en http de l'adresse Merci pour les infos Maintenant je planche sur un autre souci afficher sous forme de menu les description des produits et pas en une liste qui fait des page long comme le bras ... lol Je retourne a mon code vu que j'ai trouver le fichier a modifier je vous tiendrai au courant si ce petit bout de code peux servir à quelqu'un vu que je n'ai pas trouver de solution gratuite A+ Pascal
  13. Bonjour, Je suis intéresser par ce post mais je début en prestashop je voudrai savoir quel fichier je dois modifier pour avoir ce résultat. Je recherche une solution gratuit donc je vais taper du code pour arriver a ce résultat mais je ne sais pas que fichier je dois modifier car je ne suis pas sur du fichier, je pense product.tpl mais quans je le modifie aucune modif ce fait Merci pour vos raiponces Pascal
  14. J'avais changer dans le php pas dans la config (le bouler ... lol) Nickel merci beaucoup pour ton coup de main maintenant je suis correct point de vu protection des mineur me reste plus cas voir pour bloquer les commande si la personne n'est pas majeur par la date de naissance Encore merci pour le coup de main
×
×
  • Create New...