kjar Posted November 17, 2010 Share Posted November 17, 2010 Bonjour,Je débute sous Prestashop et j'ai un petit problème de concept.J'utilise le template health-template qui propose une barre de navigation horizontale, cette barre est un module : categoriesbar qui est greffé au point d'accroche Top of pages.Mon souhait est de pouvoir appeler un autre module à partir du module categoriesbar , et plus précisément pouvoir y inclure le module de sélection des langues blocklanguages sans le greffer directement sur Top of pages qui me prive de toute personnalisation à l'intérieur de ma barre horizontale.Voilà, j'espère que ma demande n'est pas brouillon, pas tjs évident. lolMerci d'avance à toute la communauté, si un poste existe déjà sur cette demande merci de me rediriger, je n'ai pas trouvé.Have a good day ! - KJAR - Link to comment Share on other sites More sharing options...
Vincent Decaux Posted November 17, 2010 Share Posted November 17, 2010 Non tu ne pourras pas en faisant comme ça, le plus simple est d'utiliser le CSS pour placer ton block langues au bon endroit.Avec une position : absolute et bien placer avec les propriétés right et top, tu peux t'en sortir.Sinon, tu peux récupérer le code PHP du module lang et le code HTML + Smarty du fichier .tpl, et l'insérer dans l'autre module ... Facile et rapide pour un développeur averti, moins pour un débutant. Link to comment Share on other sites More sharing options...
kjar Posted November 17, 2010 Author Share Posted November 17, 2010 merci Vincent,j'ai résolu le problème en utilisant ta seconde solution (j'explique) :dans le php de blocklanguages je récupère / copie le code : $languages = Language::getLanguages(); if (!sizeof($languages)) return ''; $smarty->assign('languages', $languages); qui se trouve dans la fonction : function hookTop($params) { global $smarty; $languages = Language::getLanguages(); if (!sizeof($languages)) return ''; $smarty->assign('languages', $languages); return $this->display(__FILE__, 'blocklanguages.tpl'); } je colle ensuite ce code dans la fonction du même nom (hookTop) mais cette fois dans le fichier php du module personnalisé pour ma barre de nav. le fichier maBarreDeNav.php contient donc une fonction qui ressemble à : function hookTop($params) { global $smarty; //construct categories $depth = 0; $rootCateg = Category::getRootCategory()->recurseLiteCategTree($depth); if (isset($_GET['id_category'])) $smarty->assign('currentCategoryId', intval($_GET['id_category'])); $smarty->assign('bar_tpl_path', _PS_MODULE_DIR_.'categoriesbar/category-bar-level.tpl'); $smarty->assign('categoriesLevel', $rootCateg); $level = count($rootCateg['children']); $level = $level + 1 ; $smarty->assign('level', $level); // gestion de la sélection des langues $languages = Language::getLanguages(); if (!sizeof($languages)) return ''; $smarty->assign('languages', $languages); // \ fin gestion des langues return $this->display(__FILE__, 'categoriesbar.tpl'); } je procède de la même manière mais cette fois en copiant le code html du fichier blocklanguages.tpl pour le copier dans le fichier maBarreDeNav.tplet voilà le tour est joué (à quelques réglages de positionnement)il faut que je creuse le concept hookTop = accroche top of pages = une suite de block à la keleuleu .......encore merci et bonne route-- KJAR -- 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