pppplus Posted September 11, 2015 Share Posted September 11, 2015 (edited) Bonjour à tous J'ai un problème tout bête je pense, mais je ne trouve pas la solution ! Je viens de réécrire un module avec la structure pour PS 1.6 J'ai un problème avec le CSS qui ne se charge pas sur PS 1.5 et 1.4 J'ai mis le dossier backward compatibility, et donc le module fonctionne techniquement correctement. Par contre, les fichiers css sont absent sur les versions avant 1.6 (et bien présent en 1.6+) public function hookBackOfficeHeader() { if (Tools::getValue('configure') == $this->name) { $this->context->controller->addJS($this->_path . 'views/js/back.js'); $this->context->controller->addCSS($this->_path . 'views/css/back.css'); if (version_compare(_PS_VERSION_, '1.6.0.0') < 0) { $this->context->controller->addCSS($this->_path . 'views/css/back_less_PS16.css'); echo $this->_path . 'views/css/back_less_PS16.css'; } } } La fonction hookBackOfficeHeader est bien chargée, car si je fais un echo $this->_path . 'views/css/back_less_PS16.css'; (idem pour le fichier back.css, donc ce n'est pas le if compare qui déconne) Le texte s'affiche avec le bon chemin. (idem pour les fichiers .js) Donc, soit j'ai loupé une étape, soit le 'backward compatibility' ne fait pas le job pour charger les .js et .css. Merci d'avance pour votre aide ! PS : les traductions PS 1.6 ne passent pas sur PS 1.4 ?Faut-il les refaire, ou il y a une petite astuce ? Edited September 11, 2015 by pppplus (see edit history) Link to comment Share on other sites More sharing options...
coeos.pro Posted September 11, 2015 Share Posted September 11, 2015 d'entrée de jeu le context n’existe pas sous 1.4 donc $this->context devrait retourner une erreur et sous 1.5 c'est plutôt : global $css_files; $this->context->controller->css_files[$this->_path . 'views/css/back_less_PS16.css'] = 'all'; Link to comment Share on other sites More sharing options...
pppplus Posted September 11, 2015 Author Share Posted September 11, 2015 Merci coeos.pro Mais justement backward compatibility est fait pour gérer cela ! Et ça fait très bien le job, pour tous les "context" Ca évite d'écrire 50000 instructions différentes en fonction des versions PS. Dans la doc, il est bien expliqué aussi que ça prend en charge les chargements JS et CSS Donc, je pense que j'ai loupé qq chose, mais je n'arrive pas à voir quoi. Link to comment Share on other sites More sharing options...
coeos.pro Posted September 11, 2015 Share Posted September 11, 2015 tu as un lien vers la doc ? Link to comment Share on other sites More sharing options...
pppplus Posted September 11, 2015 Author Share Posted September 11, 2015 http://doc.prestashop.com/display/PS16/Using+the+backward+compatibility+toolkit Context.php: adds a Context-like support to PrestaShop 1.4, as well as backward compatible Controller- and Customer-like methods. 1 Link to comment Share on other sites More sharing options...
coeos.pro Posted September 11, 2015 Share Posted September 11, 2015 (edited) ok ça créé un "pseudo" context mais $this->context->controller->addCSS appelle la fonction addCSS qui est dans classes/controller/FrontController.php et pour le backward c'est dans le fichier backward_compatilbility/Context.php, il faudrait essayer $this->context->addCSS($this->_path . 'views/css/back_less_PS16.css'); Edited September 11, 2015 by coeos.pro (see edit history) Link to comment Share on other sites More sharing options...
pppplus Posted September 11, 2015 Author Share Posted September 11, 2015 Merci pour ton aide. Test de : $this->context->addCSS($this->_path . 'views/css/back_less_PS16.css'); Malheureusement, ça ne marche pas : Call to undefined method Context::addCSS() Link to comment Share on other sites More sharing options...
pppplus Posted September 11, 2015 Author Share Posted September 11, 2015 Apparemment, il faut le charger 'à l'ancienne" <link rel="stylesheet" href="'.$this->_path . 'views/css/back.css" type="text/css" /> Link to comment Share on other sites More sharing options...
pppplus Posted September 11, 2015 Author Share Posted September 11, 2015 (edited) message effacé, j'avais écrit une bêtise... :-) Edited September 11, 2015 by pppplus (see edit history) 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