kerlin Posted September 18, 2017 Share Posted September 18, 2017 Bonjour, sur un site avec un thème acheté personnalisé, je rencontre un problème depouis la màj ed 1.6.16 à 1.6.1.17 : quand on affiche une catégorie, pendant quelques secondes l'affichage est en grid puis passe en list. Il n'y a pas de bouton pour passer de l'un à l'autre qui pourrait expliquer qu'il y aurait eu un changement et que le cache l'ait gardé en mémoire.J'ai vérifié global.js, product-list.tpl et le fichier css que j'avais personnalisé, ils sont identiques à ceux du thème que j'avais sauvegardé avant la màj. Que dois-je vérifier d'autre qui pourrait expliquer ce changement d'affichage ?Merci d'avance. Link to comment Share on other sites More sharing options...
kerlin Posted September 21, 2017 Author Share Posted September 21, 2017 Bonjour, après moultes péripéties j'ai enfin trouvé ce qui provoquait ce bug : le passage de toutes les pages en SSL ! (et pourtant pas faute de demander au gestionnaire du site ce qu'il avait fait ces derniers temps ... Enfin ...). Quand le bouton Activer le SSL est sur oui, ça va. Mais ça ne va plus si on active le second (sur toutes les pages).Une bonne âme pourrait me dire d'où proviendrait ce souci ? Merci da'vance Link to comment Share on other sites More sharing options...
kerlin Posted September 27, 2017 Author Share Posted September 27, 2017 Bonjour, personne n'aurait une idée ? Je rappelle le souci : après avoir fait la maj de 1.6.1.16 à 1.6.1.17, les catégories n'affichent plus correctement les produits quand le SSL est activé sur toutes les pages, les produits s'affichent en grille mais avec les css de list. Merci Link to comment Share on other sites More sharing options...
Rom Soul Posted September 29, 2017 Share Posted September 29, 2017 Bonjour Kerlin, Le choix de l'affichage grille ou liste est mémorisé dans un cookie me semble-t-il : ainsi la boutique se souvient du choix de chaque internaute d'une visite à l'autre, ou encore d'une page à l'autre. Peut-être le passage en SSL perturbe-t-il le fonctionnement de ce cookie ? Quel est le comportement en visitant le site avec un navigateur dépourvu du cookie ? ( Nettoyer les cookies ou encore essayer en mode "navigation privée" avec Chrome ou FF. ) Du point de vue CSS, tout le code nécessaire pour les 2 types d'affichages est chargé, Mais le code correspondant à l'affichage "liste" s'applique seulement si la classe "list" est présente dans le code HTML sur la liste des produits : <ul class="product_list row list">...</ul> Tandis que l'affichage "grille" s'applique seulement si grid est présent : <ul class="product_list row grid">...</ul> ( c'est du moins le fonctionnement sur le thème standard de Prestashop 1.6 chez moi ) L'articulation entre le cookie et ce fonctionnement se fait en javascript : un fichier JS consulte le cookie et ajuste le HTML pour y placer "grid" ou "list" : ça pourrait être ça qui bugue sur ton install : pour peu que ce code JS tarde à s’exécuter lors du chargement de la page, tu as le temps de voir l'affichage "grille", puis le passage en mode "liste" une fois que le JS a fait son taf ... ou un mix des 2 ? Ton site est-il configuré pour placer en fin de HTML tout le code JS ? ( Paramètres avancés > Performances : Déplacer le code JavaScript à la fin ) Essaie en changeant ce réglage, certains thèmes le supportent mal ! Link to comment Share on other sites More sharing options...
kerlin Posted September 29, 2017 Author Share Posted September 29, 2017 Merci à toi pour cette réponse très intéressante ! J'avais pensé au réglage dans les performances mais il n'est pas activé (javascript à la fin). Par contre, quel est le JS dont tu parles ? Car il y a eu des soucis lors du transfert des fichiers et manifestement certains n'ont pas été correctement transférés. Il suffit peut-être que je retransfère le JS concerné.Merci d'avance !! Link to comment Share on other sites More sharing options...
Rom Soul Posted September 30, 2017 Share Posted September 30, 2017 ça n'est qu'une piste mais ... ça se tente, ma foi Le fichier qui gère ça est le suivant dans le thème par défaut : /themes/default-bootstrap/js/global.js Trouve la ligne suivante : var view = $.totalStorage('display'); C'est elle qui récupère ce qu'a noté le cookie ("grid" ou "list"). Dans les lignes suivantes on voit ce que Prestashop fait de cette info si elle existe. Mais avant de t'engager dans la jungle du javascript, qui n'a pas de raison particulière de dé##nner, as-tu essayé depuis un navigateur sans cookie ? Si ça se trouve ça ne bugue que depuis l'accès précis que tu utilises pour bricoler ta boutique ? 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