laurent54 Posted November 26, 2016 Share Posted November 26, 2016 Bonjour, Je viens vous demander de l'aide car je bloque sur les hooks personnalisés. J'ai créé un override du indexController pour afficher ma propre page smarty (totalement custom) donc je ne veux pas du contenu de la boutique type le header et footer que j'ai désactivé et je pense que mes problèmes viennent de là (voir plus bas) public function initContent(){ parent::initContent(); $this->display_header = false; $this->display_footer = false; $this->setTemplate(_PS_THEME_DIR_.'restricted-access.tpl'); } Puis un override du module homeslider pour enregistrer mon propre hook pour ensuite l'afficher dans ma vue <?php if (!defined('_PS_VERSION_')) exit; class HomeSliderOverride extends HomeSlider { public function registerDisplayHeaderMiddleHook() { return $this->registerHook('displayHeaderMiddle'); } public function hookDisplayHeaderMiddle($params) { return $this->hookdisplayTopColumn($params); } public function install() { parent::install(); return $this->registerHook('displayHeaderMiddle'); } } et la vue ou je suis obligé d'ajouter les css et JS à la main <!DOCTYPE html> <html lang="en"> <head> <title>{$meta_title|escape:'html':'UTF-8'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> {if isset($meta_description)} <meta name="description" content="{$meta_description|escape:'html':'UTF-8'}" /> {/if} {if isset($meta_keywords)} <meta name="keywords" content="{$meta_keywords|escape:'html':'UTF-8'}" /> {/if} {if isset($css_files)} {foreach from=$css_files key=css_uri item=media} <link href="{$css_uri|escape:'html':'UTF-8'}" rel="stylesheet" type="text/css"/> {/foreach} {/if} {if isset($js_defer) && !$js_defer && isset($js_files) && isset($js_def)} {$js_def} {foreach from=$js_files item=js_uri} <script type="text/javascript" src="{$js_uri|escape:'html':'UTF-8'}"></script> {/foreach} {/if} <meta name="robots" content="{if isset($nobots)}no{/if}index,follow" /> <link rel="shortcut icon" href="{$favicon_url}" /> </head> <body> <div class="container"> <div class="col-xs-12 col-sm-6"> <h1>{$shop_name}</h1> </div> {hook h="displayHeaderMiddle" mod="homeslider"} </div> {debug} {include file="$tpl_dir./global.tpl"} </body> </html> Mon problème est qu'à ce niveau, il me manque les JS et les css du module, j'ai essayé ça dans mon hook : $this->context->controller->addCSS($this->_path.'homeslider.css'); $this->context->controller->addJS($this->_path.'js/homeslider.js'); $this->context->controller->addJqueryPlugin(array('bxslider')); Mais rien n'y fait dans le {debug} de smarty les fichiers ne sont pas présents, sans compter les autres problèmes de variable non définies .. Peux être n'est ce pas la bonne méthode pour créer une page 100% custom en y intégrant des modules existants du store ? Merci 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