DARKF3D3 Posted March 4, 2022 Share Posted March 4, 2022 (edited) Ciao, qualcuno sa in che modo Prestashop carica i file di jquery? Ispezionando il codice del sito vedo per esempio che nel footer sono presenti questi 3 file, però non li ritrovo nei file tpl del tema, quindi presumo che vengano richiamati da qualche altor file. Edited March 4, 2022 by DARKF3D3 (see edit history) Link to comment Share on other sites More sharing options...
Codencode Posted March 11, 2022 Share Posted March 11, 2022 Dipende dal template. Il tema base (classic) lo include come "dipendenza" mediante il package.json, quindi viene incluso direttamente nel file theme.js Link to comment Share on other sites More sharing options...
DARKF3D3 Posted March 11, 2022 Author Share Posted March 11, 2022 Ho provato a controllare nel file "/themes/classic/assets/js/theme.js" però non trovo alcun riferimento a jquery-ui, growl o fancybox Link to comment Share on other sites More sharing options...
Codencode Posted March 11, 2022 Share Posted March 11, 2022 Non avevo inteso che ti riferivi a JQuery UI. Facendo chiarezza, JQuery viene aggiunto direttamente nel file theme.js, mentre JQuery UI viene aggiunto dal controller FrontController metodo addJqueryUI. Fancybox e growl, nella una versione base di Prestshop, tema classic, non c'è, o almeno io non lo vedo, probabilmente nel tuo caso vengono aggiunti da un modulo. Link to comment Share on other sites More sharing options...
DARKF3D3 Posted March 14, 2022 Author Share Posted March 14, 2022 Grazie per il chiarimento. Sto cercando di capire quali moduli possano essere, purtroppo non è molto facile perché il percorso di questi file non fa riferimento a moduli ma alla cartella js che c'è nella root di prestashop. Intanto però ho trovato un altro modulo che causa il caricamento di un file duplicato (jquery.countdown.min.js). Non riesco però a capire perché nonostante il file sia richiamato nella funzione "hookDisplayHeader", nel F.O. lo ritrovo nel footer. public function hookDisplayHeader() { $this->context->controller->addJS($this->_path.'views/js/jquery.countdown.min.js'); Link to comment Share on other sites More sharing options...
Codencode Posted March 14, 2022 Share Posted March 14, 2022 Perché utilizzando il metodo addJS lo script viene aggiunto di default nel footer. Nella versione 1.7 di Prestashop il metodo addJS è stato deprecato, ma comunque funziona, va utilizzato registerJavascript che da la possibilità di specificare dove va aggiunto il file. Link to comment Share on other sites More sharing options...
DARKF3D3 Posted March 16, 2022 Author Share Posted March 16, 2022 Ottimo, con registerJavascript sono finalmente riuscito a spostare alcuni script. Ora mi resta solo il problema di trovare quali sono i moduli richiamano jquery causando duplicati, non essendoci riferimenti al modulo l'unico modo è di andare a tentativi disattivando un modulo alla volta o ci sono soluzioni più semplici? Link to comment Share on other sites More sharing options...
Codencode Posted March 17, 2022 Share Posted March 17, 2022 Se hai una copia del sito in locale e utilizzi un IDE decente puoi fare un ricerca nei file del progetto. 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