Jump to content

[Module Prestashop gratuit] Affichage LISTE ou GRILLE avec jQuery pour PS1.3 et PS1.4


jolvil

Recommended Posts

Pour PS1.3 et PS1.4

 

Incompatible avec PS 1.5

Problème: la navigation à facettes ne marche pas quand le module est installé.

 

AVERTISSEMENT !! Ce module fonctionne tel quel avec le thème Prestashop de base uniquement.

Pour une utilisation avec le thème Prestashop_new ou tout autre thème, vous devez adapter les css.

 

Ce module permet au visiteur de choisir l'affichage liste ou grille pour les listes de produits (catégories, nouveaux produits, promotions...). Le choix de l'affichage est conservé durant la navigation.

L'affichage par défaut est liste, qui est celui du thème de base Prestashop.

 

Comment afficher en mode grille par defaut

Il y a 2 manières d'afficher en grille par défaut:

 

- Modifier le .css du thème pour l'affichage par défaut et modifier listorgridswitch.css du module pour l'autre affichage.

 

- Utiliser le cookie (solution simple et rapide à mettre en place):

 

Avec PS 1.4 placer Cookie.php dans le dossier override/classes/. C'est toutl !

 

Avec PS 1.3 dans classes/Cookie.php modifier fonction _get($key) comme ceci:

 

function __get($key)
{
 if ($key=='listorgridmode' && !isset($this->_content[$key]))
				return 1;
 return isset($this->_content[$key]) ? $this->_content[$key] : false;
}

 

L'archive du module est disponible sur le topic en anglais:

http://www.prestasho...d-using-jquery/

 

testé OK sur PS1.2, PS1.3 et PS1.4

Explorer 6,7,8 - Firefox - Chrome - Safari

 

---------------------------------------------------------------------------------------

 

Nouvelle version du module 1.7

 

Desormais vous n'avez plus à faire de modifications des fichiers manuellement, le module s'en charge lui-même (une ligne va être ajouté au début des fichiers product-sort.tpl et pagination.tpl de votre thème). Et le choix d'affichage du visiteur est maintenant conservé durant sa visite de la boutique.

 

Tout ceci est possible grâce à Doekia. Un grand MERCI à lui!

 

Voir le fichier LISEZ-MOI.pdf joint à l'archive pour avoir plus d'informations sur le module et son installation.

 

Si le bouton n’apparaît en haut des listes de produits après installation du module, essayez de vider le cache Smarty: sur 1.4 Admin => Préférence => Performance => Forcer la compilation Oui , Cache Non. En 1.3 en effacant manuellement les fichiers compilé ou en utilisant le module Clear Smarty

 

version du module 1.8

Correction probleme de l'affichage dans la page des fabricants + css

Edited by jolvil (see edit history)
  • Like 1
Link to comment
Share on other sites

Le seul point négatif est que le choix n'est pas conservé lors du passage à la page suivante

 

Oui le module pourrait etre amélioré avec un cookie pour conserver le choix d'affichage et éventuellement offrir le choix d'affichage liste ou grille pour l'affichage par défaut.

Mais n'etant pas programmeur je laisse soin à de bonnes volontés plus compétentes pour améliorer cette ebauche de module.

Link to comment
Share on other sites

 

Oui le module pourrait etre amélioré avec un cookie pour conserver le choix d'affichage et éventuellement offrir le choix d'affichage liste ou grille pour l'affichage par défaut.

Mais n'etant pas programmeur je laisse soin à de bonnes volontés plus compétentes pour améliorer cette ebauche de module.

 

Pas besoin de cookie, il te suffit de faire a n'importe quel moment un $cookie->griddisplay = true et de tester lors de l'ouverture cette même valeur. $cookie->griddisplay c'est du php donc tu lances un appel ajax lors de la sélection.

 

Cordialement,

(d)oekia

Link to comment
Share on other sites

Pas besoin de cookie, il te suffit de faire a n'importe quel moment un $cookie->griddisplay = true et de tester lors de l'ouverture cette même valeur. $cookie->griddisplay c'est du php donc tu lances un appel ajax lors de la sélection.

 

Super, si tu peux filer un coup de main pour faire evoluer le module bienvenue ! Pour etre honnete l'Ajax c'est du chinois pour moi

Link to comment
Share on other sites

@Flam: merci pour le sarcasme ;-)

 

Quand jolvil parle d'un cookie il entends (enfin je crois) un cookie séparé au sens navigateur.

Quand je parle de $cookie, je parle de l'objet Prestashop (qui bien sur ce traduit en session cookie, cookie qui existe déjà)

Link to comment
Share on other sites

Quand jolvil parle d'un cookie il entends (enfin je crois) un cookie séparé au sens navigateur.

Je n'ai pas d'idée précise de la solution technique à adopter :unsure:

 

Quelque soit la solution trouvée (cookie or not cookie), cela serait bien si le choix de l'affichage puisse etre sauvegardé durant la navigation de l'utilisateur, Il y a un module liste ou grille Pro qui a été proposé il y a peu http://www.prestasho...e-ou-en-grille/ mais le choix de navigation semble etre ajouté à l'url. Je ne trouve pas judicieux de toucher à l'url pour des raisons de referencement et on evite de recharger la page.

 

Si on arrive a trouver une solution pour cette conservation du choix, le module serait deja bien fonctionnel. Pour les choix de config en BO, cela peut etre vu plus tard..

Link to comment
Share on other sites

@Flam: merci pour le sarcasme ;-)

De rien :lol:

(Je vois que tu as le sens de l'humour ...)

 

Quand jolvil parle d'un cookie il entends (enfin je crois) un cookie séparé au sens navigateur.

Exact !! :rolleyes:

 

Quelques pistes :

 

en pur JS : http://ppk.developpez.com/tutoriels/javascript/gestion-cookies-javascript/

 

en jQuery :

 

http://www.zorrito.com/cookie-jquery-pour-style-switcher/

 

http://web.enavu.com/tutorials/working-with-cookies-using-jquery-and-javascript/

http://www.akchauhan.com/manage-add-edit-delete-cookies-in-jquery/

 

je pense que ce serait mieux en pur JS (faut voir ce qu'offre ces jQuery Plugin, niveau compatibilité supérieure ??)

Link to comment
Share on other sites

je pense que ce serait mieux en pur JS (faut voir ce qu'offre ces jQuery Plugin, niveau compatibilité supérieure ??)

JS ou JQuery c'est égal et je pense que les 2 sont de mauvaises idées. Cela oblige à ajouter un autre cookie pour le site (cookie séparé) à moins de totalement embarquer le Blowfish pour réencrypter le cookie de Prestashop et donc de divulger les matrices S associé donc divulger les clés de décryptage (pb de sécurité).

De plus cela ne permet pas de prévoir la gestion future d'un panneau de configuration qui lui devrait/devra utiliser le cookie Prestashop.

PS le blowfish c'est juste un petit monstre, l'ajax c'est le meilleur des 2; Encryption classique PS, intégré au cookie PS, pérenne.

 

J'ai envoyé un premier jet fonctionnel à jolvil qui verra ce qu'il en pense.

 

Cordialement,

(d)oekia

Link to comment
Share on other sites

Bien vu, j'avais pas envie de me prendre la tête avec le "poisson qui souffle" ;)

 

C'est sûr que ta méthode est la meilleure car elle respecte les standards Presta, mais je pensais que cela aurait été sympa d'avoir un cookie de config lisible (d'autant plus qu'il n'y a rien de confidentiel à cacher : config=grid ...)

Link to comment
Share on other sites

Bonjour je viens a vous pour avoir un peu d'aide pour ce module... J'ai effectué les changements qu'il y a marquer dans le 1er post US mais il n'y a pas de changement dans mon site... je ne vois pas le logo afin de changer de l'un a l'autre ...

 

le reste du sujet etant en anglais je ne comprends pas si il y autre chose a faire ...

 

Pourriez vous m'aider svp???

Link to comment
Share on other sites

Nouvelle version du module affichage liste ou grille 1.7

Desormais vous n'avez pas à faire de modifications des fichiers tpl, le module s'en charge lui-meme. Le choix d'affichage du visiteur est conservé durant sa visite de la boutique. Tout ceci est possible grâce à Doekia. Un grand MERCI à lui!

Link to comment
Share on other sites

Je voulais juste préciser que pour ma version en production il a fallu que je compile manuellement le cache smarty pour que les modifs soient prises en compte...

Et pour aérer un peu j'ai ajouté un saut de ligne après la description de la catégorie.

Merci encore.

Link to comment
Share on other sites

Nouvelle petite remarque:

Lors du passage de liste à grille avec le nombre de produit visible par défaut (10), un article se trouve tout seul en bas...

Pour éviter cela il suffit de modifier le fichier pagination.php comme ci-dessous:

 

<?php
$nArray = intval(Configuration::get('PS_PRODUCTS_PER_PAGE')) != 9 ? array(intval(Configuration::get('PS_PRODUCTS_PER_PAGE')), 9, 18, 45) : array(9, 18, 45);
$n = abs(intval(Tools::getValue('n', intval(Configuration::get('PS_PRODUCTS_PER_PAGE')))));
$p = abs(intval(Tools::getValue('p', 1)));
$range = 2; /* how many pages around page selected */
if (!$n)
$n = $nArray[0];
if ($p < 0)
$p = 0;
if ($p > ($nbProducts / $n))
$p = ceil($nbProducts / $n);
$pages_nb = ceil($nbProducts / intval($n));
$start = intval($p - $range);
if ($start < 1)
$start = 1;
$stop = intval($p + $range);
if ($stop > $pages_nb)
$stop = intval($pages_nb);
$pagination_infos = array('pages_nb' => intval($pages_nb), 'p' => intval($p), 'n' => intval($n), 'nArray' => $nArray, 'range' => intval($range), 'start' => intval($start), 'stop' => intval($stop));
$smarty->assign($pagination_infos);
?>

 

 

Et ensuite de définir le nombre de produit par défaut à 9 dans le back office:

Panneau d'administration >> Préférences >> Produits

Link to comment
Share on other sites

Juste un petit décalage entre le bloc changer de vue et le bloc de tri qui est situé en-dessous; esthétiquement je trouvais que c'était mieux sur la même ligne...

 

Pour aligner le bouton avec le menu de tri il suffit d'ajouter

 

 

div.listorgridswitch {

position: relative;

top: 20px

}

 

dans listorgridswitc.css

Link to comment
Share on other sites

Il ne fonctionne pas chez moi en 1.4.6.2 avec le theme d'origine

Je viens juste de corriger ton site. Il n'était pas en thème d'origine. Tu avais appliqué les modifs 1.2 dedans et tu les y avais laissé.

 

Donc pour tous: Avant d'installer remettez le template product-sort.tpl dans son état d'origine si vous l'aviez patché.

 

Cdlt,

(d)oekia

Link to comment
Share on other sites

Powaaaaaaaaaaa !!! Merci mon ami !!!! Gros Up a toi !!!! A vous ;) Merci merci merci

 

Petite Info : Pour se ou sa installe et rien ne change essayé sa .

 

Admin => Préférence => Performance => Forcer la compilation Oui , Cache Non .

 

 

 

 

Merci encore a tous se qui on contribuer pour cette merveille que beaucoup de monde cherche .

Link to comment
Share on other sites

Marche pas c'est un peu vague...

 

Comme j'ai dit dans un mail privé, rien n'a été changé dans le code à part l'appel ajax au pire je le mettrait en try/catch mais sans l'ajax ça redevient assez inutile.

 

Et non je ne peux pas débugguer les "truc" de Redmond encore moins quand ça a plus de 10ans (IE6 = 2001).

Je crois pas une seule seconde qu'il existe encore de vrais IE6, plus des bots ou des signatures web agent ...

Essayer de faire du gmail/facebook/twitter avec EI6 pour voir

 

Désolé.

Link to comment
Share on other sites

Je vais être plus precis: le clic sur l'image qui permet de switcher n'a aucun effet. La vue ne change pas. Sinon perso je suis toujours sur IE7 mais j'utilise principalement Chrome, et là rien à dire ca fonctionne.

Sur le forum anglais on parle d'un probleme avec IE9

Apparently has compatibility issues with IE 9

 

Quequ'un a t il testé? je n'ai pas IE9

Explorer reste encore (pour combien de temps?) le premier navigateur utilisé (

37% chez moi)

Link to comment
Share on other sites

Chez moi c'est Firefox 45%, Chrome 36%, Safari 9% IE 9%.

 

On clique il ne se passe rien ... ok vois tu la trace d'un appel ajax? y a t'il une erreur javascript?

 

PS: Dans le forum jQuery on parle d'un problème avec le event.preventDefault()

 

Dans le listorswitch.js il faut remplacer:

event.preventDefault()

par:

if(event.preventDefault)
	event.preventDefault();
else
	event.returnValue = false;

 

Là c'est carrément en mode alchimiste alors si c'est pas ça soyez indulgent - je suis Redmonophobe

Link to comment
Share on other sites

Non

 

Je sais, je sais : "Shame on Me"

 

Mais je me suis un peu amusé avec RedHat 5 & Ubuntu / Kubuntu 10 & Debian 6 ;)

 

EDIT :

 

AAAaaahhhhh ... !!!!

 

Il me semblait bien, aussi ...

 

Je viens de faire quelques recherches :

 

http://wine-reviews.net/wine-reviews/applications/ie-7-on-linux-with-wine.html

 

http://stream-recorder.com/forum/install-internet-explorer-7-ie7-ubuntu-10-t6721.html

 

http://www.tatanka.com.br/ies4linux/page/Fr/Page_D%27Accueil

 

Bon courage B)

Link to comment
Share on other sites

On clique il ne se passe rien ... ok vois tu la trace d'un appel ajax? y a t'il une erreur javascript?

 

PS: Dans le forum jQuery on parle d'un problème avec le event.preventDefault()

 

Dans le listorswitch.js il faut remplacer:

event.preventDefault()

par:

 

if(event.preventDefault)

event.preventDefault();

else

event.returnValue = false;

 

apparament la modif ne donne rien

 

Sinon il y a bien un message d'erreur qui apparait sur IE 7 lorsque le module est installé:

ligne 30

caractere 3

identificateur, chaine ou nombre attendu

code 0

Link to comment
Share on other sites

Bonjour

 

je l'ai installé sur mon site de test (réplique du site de production) qui tourne sous PS 1.4.5.1. J'ai un thème personnalisé, sans colonne à gauche et juste une colonne à droite.

 

Le module s'installe bien, le bouton est bien ajouté dans l'interface... par contre mes blocs qui sont habituellement en colonne de droite (panier & nouveau produits + navigation à facette) se retrouvent en bas de la colonne centrale...

 

Désactiver le module ne suffit pas, il me faut le désinstaller et supprimer le cache + forcer la recompilation Smarty pour que tout rentre dans l'ordre.

 

Une idée de pourquoi ?

 

Merci

Matt

Link to comment
Share on other sites

Comme indiqué, quand on a un theme personnalisé, il faut modifier les css du module.

 

Des que l'on modifie un tpl, il faut supprimer le cache si on a pas choisi de forcer la compilation en BO car une version non modifiée du tpl peut etre dans le cache.

Link to comment
Share on other sites

...

colonne de droite (panier & nouveau produits + navigation à facette) se retrouvent en bas de la colonne centrale...

Une idée de pourquoi ?

 

Comme expliqué dans la doc fournie (LISEZ-MOI.pdf), cela vient du fait que ton thème ne charge pas la paire de template product-sort et pagination. Quand cela est le cas la div qui va servir de container a la grille ou a la liste n'est pas fermée.

 

Active le module.

Efface la modification apporté pendant l'installe aux 2 templates mentionnés

Réfléchis à où implanter ce container pour qu'il réponde à ton besoin.

A l'endroit où tu sens que cette div doit commencer tu {include} le listorgridswitch.tpl avec le paramètre cycle="prolog" et là où elle doit se fermer avec le paramètre cycle="epilog"

//bla bla
{include file="$lorg_tpldir./modules/listorgridswitch/listorgridswitch.tpl" cycle="prolog"}
//affichage de la liste des produits
{include file="$lorg_tpldir./modules/listorgridswitch/listorgridswitch.tpl" cycle="epilog"}
// bla bla

Link to comment
Share on other sites

Hello

 

OK merci... j'ai essayé: j'ai bien réussi à conserver un comportement d'affichage correct concernant la colonne de droit en agissant au début et en fin de produit-list.tpl

 

Toutefois, j'observe que les descriptions courtes de ma liste de produit se retrouvent sous la grille... pas beau. A quoi cela est-il dû ?

 

Matt

Link to comment
Share on other sites

Normalement les descriptions courtes ne sont pas affichées en mode grille (display: none), si tu veux afficher les descriptions en mode grille il faut augmenter la hauteur, bref retravailler un peu le css. Pour ma part et pour conserver un affichage correct en mode grille j'ai ajouté des elements <div> dans le product-list.tpl. Le css proposé dans le module n'est qu'une proposition simple à adapter au cas par cas.

Link to comment
Share on other sites

apparament la modif ne donne rien Sinon il y a bien un message d'erreur qui apparait sur IE 7 lorsque le module est installé:

ligne 30

caractere 3

identificateur, chaine ou nombre attendu

code 0

 

Il y a une virgule en trop dans le code et j'ai rajouté un return false:

 jQuery.ajax({
type: 'POST',
url: baseDir + 'modules/listorgridswitch/listorgridswitch.php',
async: false,
cache: false,
type : "POST",
dataType : "json",
data: { listorgridajax: true, listorgridmode: (mode?0:1) },
success: function(jsonData)
{
  return;
}
 });
 return false;

 

@jolvil: corrigé dans le svn (v1.7.2)

Link to comment
Share on other sites

J'ai un autre petit bug sous Explorer mais là c'est de ma faute et de la faute a Explorer.

en ajoutant dans le css position: relative, la div avec le bouton du listorgridswitch s'affiche par dessus mon menu megadrown, j'ai vu que le bug etait connu mais je n'ai pas reussi a le régler.

En enlevant le code que j'avais ajouté, le probleme n'est plus là mais le bouton n'est plus aligné.

C'est casse tete l'informatique, je me demande si il faut pas etre un peu maso pour aimer ca? ;)

 

div.listorgridswitch {

position: relative;

top: 20px

}

Link to comment
Share on other sites

J'ai un autre petit bug sous Explorer ... de la faute a Explorer.

C'est casse tete l'informatique, je me demande si il faut pas etre un peu maso pour aimer ca? ;)

:D Il faut en effet être maso pour utiliser Internet Explorer. Même IE10 ne sait toujours pas suivre les standards. En même temps ils l'ont développé en 3 semaines donc faut pas s'attendre a des miracles (http://blogs.msdn.com/b/ie/archive/2011/04/12/native-html5-first-ie10-platform-preview-available-for-download.aspx)

Link to comment
Share on other sites

Bonjour Jolvil et Doekia, merci pour ce module qui devrait être je pense être une fonction inclue à PS.

Après install du module celui-ci s'affiche bien mais je sèche sur le switch grille / liste. Le thème du site (TNT2 Atchworks) et de base en affichage Grille. lorsque de l'on est sur un page catégorie, l'affichage présélectionné du module semble être "liste" alors que l'affichage est en grille (voir http://www.clubcase.fr/152-coques-housses-etuis-pour-iphone-4s), si je clique grille alors l'affichage change mais devient incohérent. serais-ce problème d'appel aux fichiers tpl, car je les retrouve bien dans le doss du thème et ils sont bien modifiés.

Merci d'avance pour votre retour!

Bien cdlt,

Sune

Link to comment
Share on other sites

... Le thème du site (TNT2 Atchworks) ...

Demande à Atch, ça va lui prendre 2mn de faire l'intégration qui va par rapport au thème

Si le défaut est la grille, le mieux est de forcer le cookie si la valeur est vide comme ça le switch n'est pas inversé.

 

Cdlt,

(d)oekia

Link to comment
Share on other sites

Bonjour Jolvil et Doekia, merci pour ce module qui devrait être je pense être une fonction inclue à PS.

J'en ai parlé à Bruno Lévêque au Barcamp, arguant que Magento incluait cette possibilité. Il m'a écouté d'une oreille distraite, ...on verra à l'avenir ce que proposeront les prochaines releases.

 

Si tu affiches en mode grille par defaut en modifiant tes css, il faudra aussi penser à modifier l'image gif du bouton.

Edit: Si tu changes le cookie ce devrait le faire sans modifier l'image.

 

Bravo les gars !! B)

(Je voulais m'en occuper de ce Put#@!n d'internet explhorreur ... mais pas trop le temps en ce moment ... ;) jolvil)

t'inquetes on a Doekia qui assure ! ;)

  • Like 1
Link to comment
Share on other sites

Si tu affiches en mode grille par defaut, il faudra aussi penser à modifier l'image gif du bouton.

Si tu affiche la grille par défaut en affectant le $cookie->listorgridmode à 1 quand il est vide tout devrait être conforme - bouton, affichage, ... enfin je crois ;)

Link to comment
Share on other sites

J'en ai parlé à Bruno Lévêque au Barcamp, arguant que Magento incluait cette possibilité. Il m'a écouté d'une oreille distraite, ...on verra à l'avenir ce que proposeront les prochaines releases.

Je suis d'accord ... Pourquoi tu ne rajouterais pas un sondage ? ;)

 

t'inquetes on a Doekia qui assure ! ;)

Ah ... Ouf !! B)

Link to comment
Share on other sites

Ecrire un override de la classe Cookie override/classes/Cookie.php

<?php
class Cookie extends CookieCore
{
public function __get($key)
{
  if ($key=='listorgridmode' && !isset($this->_content[$key]))
return 1;
return parent::__get($key);;
}
}

 

Quand rien n'existe concernant le mode de la grille on suppose 1 => grille

 

Cdlt,

(d)oekia

Link to comment
Share on other sites

Merci pour les 2 réponses...

Celle de Doekia me conviendrait mieux mais je ne sais pas où mettre ce petit bout de code.

pourrais tu me préciser la manip?

Merci

 

Ecrire un override de la classe Cookie override/classes/Cookie.php

 

:ph34r: Je suis trop fort! la réponse est là avant la question

Link to comment
Share on other sites

Merci;

Mais j'avais bien lu ta réponse et demandais s'il fallait écrire dans le fichier existant classes/Cookie.php ou créer un nouveau fichier override/classes/Cookie.php ; A priori le dossier override n'existe pas! :wacko:

Et si c'est dans le fichier Cookie.php existant est ce qu'il y a un endroit particulier où placer le code?

Link to comment
Share on other sites

Je viens de comprendre pourquoi je ne comprenais rien!!!

Je suis en 1.2.5 et le dossier override n'existe pas!

Cette solution ne marche donc pas...

Si tu as une autre piste je suis preneur.

Merci quand même ;)

 

La même en plaçant le code dans le classes/Cookie .php

...
public function __get($key)
{
  if ($key=='listorgridmode' && !isset($this->_content[$key]))
    return 1;

 ... reste de la fonction
}
...

 

Par contre autant je comprends parfaitement que l'on reste en version antérieure avec une boutique stable et en production, autant je comprends pas dans ce cas d'y apporter des modifs - j'en connais qui ont essayé, et ils ont fini par avoir des problèmes (copyright Chevalier & Lespales)

Link to comment
Share on other sites

Merci.

Voila le code de la fonction _get($key) du fichier cookie.php:

function __get($key)
{
 if ($key=='listorgridmode' && !isset($this->_content[$key]))
	    return 1;
 return isset($this->_content[$key]) ? $this->_content[$key] : false;
}

 

Ça fonctionne et donc encore merci.

 

Par contre, juste pour expliquer et non justifier, je trouve que l'on peut apporter quelques petites modifs sympatiques comme ce module à une boutique en production pour peu que l'on prenne la précaution de les tester.

J'ai une boutique à l'identique où je fais des essais avant mise en production.

L'amélioration d'une boutique en production n'est pas à mon sens inutile...

Link to comment
Share on other sites

Ce que je veux dire c'est que même en testant, les noyaux sont si différent que l'on peu facilement passer à coté de quelque chose. Et en prod c'est pas bon. Et... l'énergie à déployer me semblerait plus judicieux passé à migrer si on veut améliorer... mais après hein... c'est affaire de chacun, aucun jugement de ma part juste un conseil ... Ici nous avons quelque chose de très simple qui utilise un objet qui chance n'a pratiquement subit aucune évolution depuis la 1.0 mais c'est l'exception ...

Link to comment
Share on other sites

En tous cas merci pour la solution et les conseils.

Et effectivement j'essaye de me cantonner à des choses assez simples.

J'aurai bien souhaité migrer vers une version supérieures mais ayant mis en place un nom de domaine par langue (langue forcée par domaine), j'ai peur de ne pas arriver à faire la même chose avec les versions supèrieures qui ont modifié la réécriture des liens. Tous mes produits seraient alors déréférencés.

Alors je me fais plaisir avec quelques modifs adaptable grace à la réactivité de ce forum.

Link to comment
Share on other sites

Quelqu'un peut m'aider s'il vous plaît.

 

Je tiens à diplay la description longue dans la vue liste et la description courte au vu de la grille.

 

Quel est le code pour le produit-list.tpl? Maintenant, j'ai

 

{if $ listorgridmode == 1} ..... {else} ... {/ if} ...

 

Mais cela ne fonctionne pas.

 

Merci pour l'aide et excuses mois pour le Francais

Link to comment
Share on other sites

Merci pour la response

 

Ceci est le code

 

{if $listorgridmode == 1}
   <p class="product_desc"><a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.description|truncate:760:'...'|strip_tags:'UTF-8'|escape:'htmlall':'UTF-8'}">{$product.description|truncate:750:'...'|strip_tags:'UTF-8'}</a></p>

   {else}
   <p class="product_desc"><a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.description_short|truncate:360:'...'|strip_tags:'UTF-8'|escape:'htmlall':'UTF-8'}">{$product.description_short|truncate:75:'...'|strip_tags:'UTF-8'}</a></p>
   {/if}

 

Et j'ai rafraichis mon cache.

Link to comment
Share on other sites

Hmmmm

 

 

product-list.tpl:

 

{if $listorgridmode == 1}
   <p class="product_desc"><a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.description|truncate:760:'...'|strip_tags:'UTF-8'|escape:'htmlall':'UTF-8'}">{$product.description|truncate:750:'...'|strip_tags:'UTF-8'}</a></p>

   {else}
   <p class="product_desc2"><a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.description_short|truncate:360:'...'|strip_tags:'UTF-8'|escape:'htmlall':'UTF-8'}">{$product.description_short|truncate:75:'...'|strip_tags:'UTF-8'}</a></p>
   {/if}

 

Et le css:

 

ul.sw_view#product_list li p.product_desc a {
color: #5A5A5A;
font-size: 11px;
padding:0;
margin: 0;
display:block;
width: 75%;
float: left;
}
ul.sw_view#product_list li p.product_desc2 a {
color: #5A5A5A;
font-size: 13px;
padding:0;
margin: 0;
display:block;
width: 75%;
float: left;
}

 

elle ressemble à une mauvaise variable de regarder sur $listorgridmode == 1

Link to comment
Share on other sites

Non

fait juste

 

 

dans le tpl

<p class="product_desc"><a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.description|truncate:760:'...'|strip_tags:'UTF-8'|escape:'htmlall':'UTF-8'}">{$product.description|truncate:750:'...'|strip_tags:'UTF-8'}</a></p>

 

<p class="product_desc2"><a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.description_short|truncate:360:'...'|strip_tags:'UTF-8'|escape:'htmlall':'UTF-8'}">{$product.description_short|truncate:75:'...'|strip_tags:'UTF-8'}</a></p>

 

et pour le css dans ton css et dans le css du module


ul.sw_view#product_list li p.product_desc a {
display:none;
}
ul.sw_view#product_list li p.product_desc2 a {
display:block;
}

 

 

 


ul.sw_view#product_list li p.product_desc a {
display:block;
}
ul.sw_view#product_list li p.product_desc2 a {
display:none;
}

Link to comment
Share on other sites

@DavyAgten: jolvil t'as expliqué le bon choix car le switch ne recharge pas le template la bacule est du pur CSS dans le contenu doit être là toujours - affiche la descriptif long et ajoute son masquage en mode grille.

[english]

jolvil did explained the proper thing since the switch does not reload the template as is acting in pure CSS over the content. It should therefore always been there - displays the long desc and add some css rule to hide it while in grid

Link to comment
Share on other sites

Je vous remercie. Je dois donc choisir une longue description du spectacle, mais tronqué à 100 caractères. Et l'option 2, la description longue, mais tronqué à 400 caractères ou plus. Mais comment fais-tu dans css? C'est encore seulement dans le TPL? (j'ai les 3 fichiers au format zip, mais je ne sais pas comment je peux télécharger)

Link to comment
Share on other sites

Bonjour à tous,

 

Merci pour ce superbe travail...

 

J'ai lu avec attention tous vos messages et j'ai essayé d'installer le module sur mon site, en appliquant les modifications préconisées.

 

Même en suivant la notice d'installation, je rencontre plusieurs problèmes :

 

- le bouton s'affiche, mais rien ne se passe quand je clique dessus

- sur la page fabriquant par exemple, le module décale tous la page et déplace ma colonne de droite sous le contenu

 

J'imagine qu'il y a une histoire de css là-dedans mais je ne sais pas quoi faire... Pourriez-vous détailler davantage les étapes d'intégration ou m'aider à faire fonctionner ce module ?

 

Version de Prestashop:

1.4.6.2

 

Nom du thème utilisé:

prestashop_new

 

Boutique Version 2 en construction

Link to comment
Share on other sites

Bon commençons, ce thème est ... plein de bug - il est comme la 1.5 alpha (c'est pour elle qu'il a été faite)

 

Il faut désactiver la navigation à facette javascript erreur !! el panier c'est http://forge.prestashop.com/browse/PSCFI-4491

Pour le reste, Il faut en effet revoir tous les sélecteurs de la css car de nombreux id et nom de classe ont changé

Link to comment
Share on other sites

merci de ta réponse doekia !

 

Le thème en apparence semble bien fonctionner, mais le lien que tu m'as donné indique bien le contraire ! Tu as l'air de savoir de quoi tu parles...

 

Je viens de mettre à jour la navigation à facettes depuis le post http://www.prestashop.com/forums/topic/138036-mise-a-jour-du-module-navigation-a-facettes-pour-1451-et/

 

Penses-tu que ce thème soit viable pour une mise en production ?

 

A l'avenir, sera-t-il plus facile d'intégrer facilement ce module dans ce thème ?

Link to comment
Share on other sites

Là tout de suite je ne sais pas.

En même temps si on ne l'essaye pas en vrai il va être dur de valider la chose la plus importante à savoir ces performances parce des thèmes nickel qui se mettent à ramer avec 20 catégories et 300 produits on en voit souvent.

 

Comme ce thème est quand même sexy et paramétrable sans trop de bidouille tpl il va faire des émules donc je ne serais pas étonné de voir bientôt surgir la css spéciale "prestashop_new"

Link to comment
Share on other sites

J'ai indiqué plus clairement au début du Topic que le module fontionnait avec les css du template de base Prestashop car la question de la compatibilité avec le nouveau theme est deja apparue plusieurs fois.

 

Si l'un d'entre vous veut se pencher sur l'adaptation de listorgridswitch.css pour le theme new_pretashop, qu'il ne se gene surtout pas, il fera des heureux... perso j'ai pas le temps.

Link to comment
Share on other sites

Là tout de suite je ne sais pas.

En même temps si on ne l'essaye pas en vrai il va être dur de valider la chose la plus importante à savoir ces performances parce des thèmes nickel qui se mettent à ramer avec 20 catégories et 300 produits on en voit souvent.

 

Comment test-tu les performances ? Je veux bien le faire moi si ça peut aider à avancer...

 

 

Comme ce thème est quand même sexy et paramétrable sans trop de bidouille tpl il va faire des émules donc je ne serais pas étonné de voir bientôt surgir la css spéciale "prestashop_new"

 

 

Si l'un d'entre vous veut se pencher sur l'adaptation de listorgridswitch.css pour le theme new_pretashop, qu'il ne se gene surtout pas, il fera des heureux... perso j'ai pas le temps.

 

Oh oui, si seulement quelqu'un pouvait nous aider sur l'intégration de ce module dans ce thème... :wub:

Link to comment
Share on other sites

Comment testes-tu les performances ? Je veux bien le faire moi si ça peut aider à avancer...

 

Et bien tu te fais entre 200 et 300 produits en 2 langues répartis dans une trentaine de catégories donc 10 à 15% dans plusieures - et dans les 2,5 combinaisions par produit en moyen et ensuite tu rappelles tout tes potes du lycée pour nous faire dans les 100 connexion heures ... Maintenant tu sais tout, tu vois :D

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...