Pythagore75 Posted November 6, 2014 Share Posted November 6, 2014 (edited) BonjourEst-il possible de remplacer en page d'accueil la catégorie (et donc l'onglet) "meilleures vente" par "Promotion"...Merci ! Prestashop version 1.6.0.6 Edited November 10, 2014 by Pythagore75 (see edit history) Link to comment Share on other sites More sharing options...
Mediacom87 Posted November 7, 2014 Share Posted November 7, 2014 Bonjour, Qu'entendez vous par remplacer ? est ce simplement changer le texte (ce qui me semble incohérent), ou utiliser le module block Promo pour l'afficher sur la page d'accueil en lieu et place de Block meilleur vente. Link to comment Share on other sites More sharing options...
Pythagore75 Posted November 7, 2014 Author Share Posted November 7, 2014 BOnjour Médiacom87.Il s'agit bien de remplacer le bloc.Ainsi, le client aurait "Produit phares" (ou populaires) / "Nouveautés" / "Promotions" côte à côte.Merci ! Link to comment Share on other sites More sharing options...
Mediacom87 Posted November 7, 2014 Share Posted November 7, 2014 Avez vous essayé de greffer le module sur les hook home comme le bloc meilleur vente ? http://doc.prestashop.com/pages/viewpage.action?pageId=11272522#G%C3%A9rerlesmodulesetlesth%C3%A8mes-D%C3%A9placerunmodulesurunpointd%27accroche Link to comment Share on other sites More sharing options...
Pythagore75 Posted November 7, 2014 Author Share Posted November 7, 2014 Merci pour le lien et l'idée.je teste cela dans la journée. Link to comment Share on other sites More sharing options...
Pythagore75 Posted November 7, 2014 Author Share Posted November 7, 2014 Re-bonjour MédiacaomJ'ai donc tenté de greffer le module "bloc promo" au hook "DisplayHomeTab" mais j'ai le message suivant: "Ce module ne peut être accroché à ce hook"Dommage car la manip était simple... Link to comment Share on other sites More sharing options...
Nory01 Posted November 7, 2014 Share Posted November 7, 2014 Hello J'ai regardé un petit peu, et pour greffé le module, il faut ajouter quelque ligne de code dans "BlockSpecials.php"rajouter ça à la ligne 63&& $this->registerHook('displayHomeTab')&& $this->registerHook('displayHomeTabContent')Et ça à la ligne 151public function hookdisplayHomeTab($params) { $this->_clearCache('blockspecials.tpl'); } public function hookdisplayHomeTabContent($params) { $this->_clearCache('blockspecials.tpl'); }Ensuite le module se greffe bien, mais cela n'affiche rien non plus.Et a y regarder de plus près, sur le module blocknewproducts et blockbestsellers, il y a un fichier spécial pour le Home en .tpl"blocknewproducts-home.tpl" et "blockbestsellers-home.tpl"Et je pense que cela ne doit pas être anodin. Link to comment Share on other sites More sharing options...
S-HAMMANI Posted November 8, 2014 Share Posted November 8, 2014 (edited) Bonjour; Les étapes à suivre pour ajouter un onglet "PROMOTIONS" dans la page d'accueil prestashop 1.6.0.6 Les manipulations à faire : Modification d'un seul fichier : modules/blockspecials/blockspecials.php Création de deux fichiers tpl dans le dossier du module (modules/blockspecials/) blockspecials-tab.tpl blockspecials-home.tpl 1- Afin de griffer le module "PROMOTIONS" dans les displayHomeTab et displayHomeTabContent; a-Remplacer le code (dans blockspecials.phpà) suivant : if ((!$theme->default_right_column || !$this->registerHook('rightColumn')) && ( !$theme->default_left_column || !$this->registerHook('leftColumn'))) PAR: if ((!$theme->default_right_column || !$this->registerHook('rightColumn')) && ( !$theme->default_left_column || !$this->registerHook('leftColumn')) && ( !$this->registerHook('hookDisplayHomeTab')) && ( !$this->registerHook('hookDisplayHomeTabContent'))) b-Coller ces deux fonctions dans le même fichier après les fonctions de hook: public function hookDisplayHomeTab($params) { return $this->display(__FILE__, 'blockspecials-tab.tpl',$this->getCacheId('blockspecials')); } public function hookDisplayHomeTabContent($params) { if (Configuration::get('PS_CATALOG_MODE')) return; // We need to create multiple caches because the products are sorted randomly $random = date('Ymd').'|'.round(rand(1, max(Configuration::get('BLOCKSPECIALS_NB_CACHES'), 1))); if (!Configuration::get('BLOCKSPECIALS_NB_CACHES') || !$this->isCached('blockspecials-home.tpl', $this->getCacheId('blockspecials|'.$random))) { if (!($specials = Product::getPricesDrop((int)$params['cookie']->id_lang, 0, 5)) && !Configuration::get('PS_BLOCK_SPECIALS_DISPLAY')) return; if (!($products = $specials)) return; $this->smarty->assign(array( 'specials' => $specials, 'products' => $products, 'mediumSize' => Image::getSize(ImageType::getFormatedName('medium')), )); } return $this->display(__FILE__, 'blockspecials-home.tpl', $this->getCacheId('blockspecials|'.$random)); } 2- Le contenu du fichier blockspecials-tab.tpl <!-- MODULE TAB Block specials --> {counter name=active_li assign=active_li} <li><a data-toggle="tab" href="#blockspecials" class="blockspecials {if $active_li == 1}active{/if}">{l s='Specials' mod='blockspecials'}</a></li> <!-- /MODULE TAB Block specials --> 3- Le contenu du fichier blockspecials-home.tpl <!-- MODULE HOME Block specials --> {counter name=active_ul assign=active_ul} <div id="blockspecials" class="blockspecials tab-pane block products_block block_content toggle_content" > {if $specials } <div class="block_content"> {include file="$tpl_dir./prices-drop.tpl" products=$products} </div> {else} <p>{l s='No product specials are available at this time.' mod='blockspecials'}</p> {/if} </div> <!-- /MODULE HOME Block specials --> ATTENTION: Avant toutes modifications sauvegarder un copie des fichiers d'origine (exemple : blockspecials.php en blockspecials.php.ORIGINE ) Bon dimanche à tous !! Said EDIT: Prise écran du résultat: Edited November 9, 2014 by S-HAMMANI (see edit history) 2 Link to comment Share on other sites More sharing options...
Nory01 Posted November 9, 2014 Share Posted November 9, 2014 Bonjour,Merci c'est absolument parfait. Link to comment Share on other sites More sharing options...
Pythagore75 Posted November 10, 2014 Author Share Posted November 10, 2014 Merci je teste ! Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now