Jump to content

PS 1.6.1.17 affichage produits de grid en list


Recommended Posts

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

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

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

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

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

ç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

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...