Jump to content

[Résolu] Bloc affichant uniquement les sous catégories d'une catégorie précise


Recommended Posts

Bonjour,

J'ai créé un clone du module blockcategories afin d'obtenir un block qui ne m'afficherait que les catégories filles d'une de mes catégories (j'ai une catégorie principale que je ne veux pas voir apparaitre (elle est donc désactivé) mais qui contient plusieurs sous catégories qui elles doivent apparaitre, mais pas avec les autres catégories principales... oui je sais c'est un peu tordu)

Voici le module à télécharger (extraire le rar et placer le dossier dans le dossier module).

Juste une petite modification dans le css (car le bloc catégorie à un id et un id est unique) => Ajouter ceci :

/* Block themes */
div#themes_block_left ul.tree { padding-left:0.5em; }
div#themes_block_left ul.dhtml{ display:none; }
div#themes_block_left ul.tree li {
   border:none;
   padding-left:15px;
   background: none;
   margin-left:0;
   font-weight:bold;
   font-size:13px;
   line-height:13px;
   margin-top:2px;
}
div#themes_block_left ul.tree li ul li{
   padding-left:15px;
   background:none;
   font-size:11px;
   font-weight:normal;
}
div#themes_block_left ul.tree li ul li ul li{
   padding-left:15px;
   font-size:9px;
}
div#themes_block_left ul.tree a{
   padding-left:0;
   color:#374853;
}
div#themes_block_left ul.tree a:hover{
   text-decoration:none;
}
div#themes_block_left ul.tree a.selected{
   color: #FD8000;
   font-weight: bold;
}
div#themes_block_left span.grower{
   display:block;
   float:left;
   background-position: 0px 3px;
   background-repeat: no-repeat;
   width:9px;
   height:15px;
   margin: 0 0 0 -10px!important;
   margin: 0 0 0 -6px;
   padding: 0;
}
div#themes_block_left span.OPEN { background-image: url('../img/icon/less.gif'); }
div#themes_block_left span.CLOSE{ background-image: url('../img/icon/more.gif'); }



Voilà dans le fichier modules/blockthemes/blockthemes.php si je rajoute une condition dans la requete SQL (id_parent = 9, l'id de ma catégorie désactivée) il ne s'affiche plus rien. Si je l'enlève le bloc theme est un clone du bloc categories.

Je sens que la solution doit etre toute conne mais je ne la vois pas pour l'instant...
Si quelqu'un à une idée ^^

Merci d'avance

Sapher

Link to comment
Share on other sites

  • 3 weeks later...

Salut,

He bien moi aussi je monte une petite boutique, et il se trouve que j'ai besoin de la même fonctionnalitée que toi alors je me suis penché sur la question, et finalement ai trouvé d'où venait le problème:

- Tu as oublié de changer la valeur de "$id_category" avec ta valeur dans la fonction getTree() de blockthemes.php

- De plus il faut supprimer la seconde condition dans cette même fonction:
if (!isset($resultIds[$id_category]))

return false;


De cette manière j'ai réussi à afficher le contenu d'une catégorie de 1er niveau.
Pour les petits curieux qui se demandent pourquoi ajouter ce menu, par exemple le site que je crée est composé de bijoux, et je voudrai avoir un menu pour les collections mais aussi un menu pour les modeles (Bague, collier, etc.).

Merci Sapher pour m'avoir donné la motive de bosser sur cette petite fonctionalitée
Merci à la Team PrestaShop pour un produit simple et efficace qui, j'en suis sûr, va faire des ravages!

ByeBye
Clem

P.S: Sapher, tiens moi au courant si les modifs marchent pour toi ;)

Link to comment
Share on other sites

Bonjour,

Merci de t'être intéressé à ce problème.
J'ai fait tes modifs ("$id_category = 9" au lieu de "$id_category = 1" dans l'entête de la fonction et mise en commentaire de "if (!isset($resultIds[$id_category])) return false;") mais ça ne fonctionne pas chez moi.

Peux tu m'envoyer ton dossier blockthemes (ou le nom que tu lui a donné) pour que je compare chaque fichier.

Merci d'avance.

Sapher

Link to comment
Share on other sites

  • 4 weeks later...

Bonsoir,
votre module m interesse , je suis en prestashop 1,1 mais apparament ca fonctionne pas pourtant j ai installé le module et j ai fait les modif en Globall.css
je cherche toujours la sollution a afficher dans le bloc categorie juste les sous categorie de la categorie mere actif.
Merci de m'orienter

Link to comment
Share on other sites

Bonjour,

Etant donné que l'id des categories que l'on veut afficher sont différent pour chacun de nous, il faut que tu rentres dans le code et modifies suivant ton cas..

Le premier test a faire est sur la requete sql qui affiche nos sous categories:

Dans blockthemes.php aprés la requete de la ligne 100, ecris "echo($query);". Par la suite, rafraichis la page de ton site web, en haut tu devrais voir s'afficher la requete sql envoyée. Copie le texte et colle le dans la fenetre des requetes sql de ta base de données (par phpmyadmin par exemple).

A mon avis, ton erreur devrait se trouver dans la requete sql, donc modifie la et test à nouveau jusqu'à que les categories désirées s'affiche. Une fois la requete trouvé, modifi la requete du blockthemes.php ligne 100 avec tes modifications puis retest ta page.

Si la requete marche dans phpmyadmin mais n'affiche toujours pas de resultat dans la page web, dis le et je reflechirai à l'etape suivante.

Bonne chance,
Clem

Link to comment
Share on other sites

  • 6 months later...

Bonjour à tous,


J'aimerais savoir si quelqu'un à trouvé la solution pour n'afficher que les catégorie Enfant comme demandé dans le premier post?

Comment faut il opérer?

Sapher, peut être à tu remis à jour ton module de manière fonctionnelle?

Merci à tous,

Link to comment
Share on other sites

  • 2 weeks later...
  • 4 months later...
  • 2 months later...
  • 1 year later...

Bonjour Myaouu,

Si ta demande est toujours d'actualité, j'ai une solution pour y répondre, pour créer autant de bloc catégorie en y mettant seulement les produits que tu souhaites dans l'une ou l'autre. Tu peux voir ce que ça donne ici :
ambre-paris

Un bloc catégories pour Bijoux - Ecrins - Chaînes
Un autre pour Offres spéciales
Et un dernier pour Artisanat Russe
La solution est déclinable à l'infinie, mais il faut mettre la main à la pâte, il ne s'agit pas d'un module tout prêt et cela permet justement d'adapter les modifications à faire en fonction de la version prestashop que tu as.
En gros, pour créer une nouvelle catégorie, cela prend environ 20 minutes, et une fois que tu as compris le fonctionnement, c'est super rapide pour les suivantes. Il est possible qu'il faille également toucher un peu à la base de donnée

Contacte moi par MP si tu es intéressé

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...