Sous catégorie ( resolu) |
Bienvenue invité ( Connexion | Inscription )
Sous catégorie ( resolu) |
4 Jul 2007, 20:35
Message
#1
|
|
Ceinture jaune OSC Groupe : Membres Messages : 42 Inscrit : 18-March 07 Membre no 16000 |
Bonjour a tous,
j'ai cherché partout réponse à mon problème mais jamais personne ne répond. Voila mon probléme : Lorsque je clique sur une catégorie, j'aimerai que tout les articles qui sont dans une des sous catégorie apparaissent. A la place j'ai aucun produit dans la catégorie qui s'affiche. Il faudrai donc que la catégorie puisse faire le listing de sa propre catégorie et de toute les sous catégorie qu'elle contient. Pourriez m'aidez svp à me guider sur une piste. merci bcp bcp Ce message a été modifié par psy4 - 5 Jul 2007, 19:56. |
|
4 Jul 2007, 20:40
Message
#2
|
|
Ceinture jaune+ OSC Groupe : Membres Messages : 94 Inscrit : 16-August 06 Lieu : Toulouse Membre no 11553 |
Euh, c'est ce que fait Oscommerce par défaut, non.
Il affiche tous les produits présents dans les différentes catégories filles. Sauf si dans la catégorie mère concernée, il y a un article actif ou inactif ... Dans ce cas, il affiche aucun produit dans cette catégorie car à la racine il trouve un produit inactif ou hors stock.... |
|
4 Jul 2007, 21:35
Message
#3
|
|
5eme dan OSC Groupe : Administrateur Messages : 9221 Inscrit : 4-March 03 Lieu : Pau Membre no 927 |
Tonton ya l'téléphon' qui son' et ya jamais person' qui répond...!
ok c'est vieux... la solution à ta demande réside 1/ dans index.php vers la ligne 111 où on trouve : CODE // needed for the new products module shown below $new_products_category_id = $current_category_id; ?> </tr> </table></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> </tr> <tr> <td><?php include(DIR_WS_MODULES . FILENAME_NEW_PRODUCTS); ?></td> </tr> </table></td> </tr> </table></td> 2/ dans le module new_products.php on passe à ce module la valeur courante de la catégorie $current_category_id et il se charge de traiter cette info en allant chercher tous les produits des sous-catégories dans la limite à afficher classés par date de manière dégressive. Tu as donc - l'info racine : la valeur de la catégorie parente, - la requête : celle qui est dans modules/new_products.php il ne reste plus qu'à bricoler tout ça pour récupérer la liste de tous les produits de la catégorie actuelle et des catégories filles et les afficher sous forme de liste avec ou sans boutons... bon code -------------------- Tout d'abord : - Ni Hotline ni Service Après Vente, ces forums sont un lieu d'échange. BIEN POSER SA QUESTION (généralités)
Les "Informations Importantes" que vous devez ABSOLUMENT avoir lues : Règlement, Bien poser sa question dans ces forums et Bien utiliser les Forums. Les raccourcis pour gagner du temps : la FAQ, les PDF de la Doc (MS2-fr): PDF-V1 et PDF-V2, le moteur de Recherche sur les forums , la Liste des Contributions de Corbin. ----------------------------- Quelques sites de référence --------------------------- PHP: Le site du Zéro et PHP Débutant avec la DOC en français -- HTML: Self HTML - WebProgrammation -- CSS: OpenWeb - AlsaCréations - CSS/Edge -- Autres ressources: - XajaX - highslide js Les bons outils : EasyPHP - WAMP-5 - - Notepad++ - Firefox et son extension WebDeveloper Le gène idéal c'est le gène original. Le génie des halles est un Génie des Alpages qui tente d'être à la page. (Merci f'murrr pour les cours de philosophie de chien) |
|
4 Jul 2007, 22:17
Message
#4
|
|
Ceinture jaune OSC Groupe : Membres Messages : 42 Inscrit : 18-March 07 Membre no 16000 |
merci bcp les gars, Gnidhal pourrai tu m'expliquer un peu plus ce que je dois faire avec $current_category_id si tu as un fichier déjà modifier avec cette manip, je pourrai y jeter un oeil ? Ce message a été modifié par psy4 - 4 Jul 2007, 22:28. |
|
4 Jul 2007, 22:24
Message
#5
|
|
Ceinture jaune OSC Groupe : Membres Messages : 42 Inscrit : 18-March 07 Membre no 16000 |
CITATION(Xav @ 4 Jul 2007, 21:40) [snapback]242311[/snapback] Euh, c'est ce que fait Oscommerce par défaut, non. Il affiche tous les produits présents dans les différentes catégories filles. Sauf si dans la catégorie mère concernée, il y a un article actif ou inactif ... Dans ce cas, il affiche aucun produit dans cette catégorie car à la racine il trouve un produit inactif ou hors stock.... non malheureusement chez moi ca ne le fais pas, il m'affiche Il n'y a aucun produit listé dans cette catégorie. malgré les sous catégorie |
|
5 Jul 2007, 08:46
Message
#6
|
|
5eme dan OSC Groupe : Administrateur Messages : 9221 Inscrit : 4-March 03 Lieu : Pau Membre no 927 |
CITATION(psy4 @ 4 Jul 2007, 23:17) [snapback]242332[/snapback] Gnidhal pourrai tu m'expliquer un peu plus ce que je dois faire avec $current_category_id Non désolé je n'ai rien en la matière. Mais je te donne là la méthode de développement avec les éléments déjà inclus. à cet endroit de index.php et dans presque tout le script, $current_category_id contient l'id de la catégorie dans laquelle on est. La requete dans new_products.php effectue déjà les 3/4 de ce que tu veux puisqu'elle liste les produits de manière récursive dans cette catégorie et ses filles. Il ne reste plus qu'à adapter tout ça pour 1/ faire une requête adaptée à tes besoins 2/ mettre en forme la liste des produits comme c'est déjà fait dans index.php au niveau "nested" c'est du dev à façon et je ne crois pas qu'il y ait de contribution pour ça. Bon code;) cela dit, ici on n'apprécie guère les warnings du type "urgent" dans le titre. Tout est urgent, c'est une question de point de vue et chacun participe ici selon son bon vouloir. Ce genre de signe de priorité ne peut donc être que mal perçu dans un univers collaboratif où tout a la même valeur d'urgence. -------------------- Tout d'abord : - Ni Hotline ni Service Après Vente, ces forums sont un lieu d'échange. BIEN POSER SA QUESTION (généralités)
Les "Informations Importantes" que vous devez ABSOLUMENT avoir lues : Règlement, Bien poser sa question dans ces forums et Bien utiliser les Forums. Les raccourcis pour gagner du temps : la FAQ, les PDF de la Doc (MS2-fr): PDF-V1 et PDF-V2, le moteur de Recherche sur les forums , la Liste des Contributions de Corbin. ----------------------------- Quelques sites de référence --------------------------- PHP: Le site du Zéro et PHP Débutant avec la DOC en français -- HTML: Self HTML - WebProgrammation -- CSS: OpenWeb - AlsaCréations - CSS/Edge -- Autres ressources: - XajaX - highslide js Les bons outils : EasyPHP - WAMP-5 - - Notepad++ - Firefox et son extension WebDeveloper Le gène idéal c'est le gène original. Le génie des halles est un Génie des Alpages qui tente d'être à la page. (Merci f'murrr pour les cours de philosophie de chien) |
|
5 Jul 2007, 18:26
Message
#7
|
|
Ceinture jaune OSC Groupe : Membres Messages : 42 Inscrit : 18-March 07 Membre no 16000 |
ok je comprend pour le probleme d'urgence, je te remercie d'avoir repondu à mon appel.
Je t'avouerai que je ne t'ai toujours pas piger la méthode que tu tente de m'expliquer. Je ne suis pas un développeur php et aimerai vraiment en apprendre plus. Maintenant mon défi est de surmonter ce problème, pourrez tu stp m'aider ?? merci |
|
5 Jul 2007, 19:57
Message
#8
|
|
Ceinture jaune OSC Groupe : Membres Messages : 42 Inscrit : 18-March 07 Membre no 16000 |
voila la modif fonctionne bien ( vu sur le forum officiel):
Gnidhal tu peu recuperé si tu le souhaite CODE At around line 20 find
if ($cateqories_products['total'] > 0) { $category_depth = 'products'; // display products } else { replace with // Begin show all subcategories mod. if (tep_count_products_in_category($cPath) > 0) { // End show all subcategories mod. $category_depth = 'products'; // display products } else { Then the actual search in the database has to be modified to include all subcategories, like this: At around line 186 find // We show them all $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'"; } } Replace with // We show them all // Begin show all subcategories mod. $cPathA = explode("_", $cPath); $size = sizeof($cPathA)-1; $subcategories_array = array(); tep_get_subcategories($subcategories_array, $cPathA[$size]); $size_sc = sizeof($subcategories_array); //Subcat count $cat_Search = "("; for($i = 0; $i < $size_sc; $i++){ $cat_Search .= "p2c.categories_id = '" . $subcategories_array[$i] . "' or "; } $cat_Search .= "p2c.categories_id = '" . $cPathA[$size] . "'" . ")"; $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and ". $cat_Search . ""; } } // End show all subcategories mod. |
|
5 Jul 2007, 20:37
Message
#9
|
|
5eme dan OSC Groupe : Administrateur Messages : 9221 Inscrit : 4-March 03 Lieu : Pau Membre no 927 |
Merci de cette réponse qui est dans l'esprit collaboratifs de nos forums
Ok perso je n'en ai pas besoin pour le moment, mais ça peut servir à d'autres. Donc bravo d'avoir partagé le fruit de tes recherches. -------------------- Tout d'abord : - Ni Hotline ni Service Après Vente, ces forums sont un lieu d'échange. BIEN POSER SA QUESTION (généralités)
Les "Informations Importantes" que vous devez ABSOLUMENT avoir lues : Règlement, Bien poser sa question dans ces forums et Bien utiliser les Forums. Les raccourcis pour gagner du temps : la FAQ, les PDF de la Doc (MS2-fr): PDF-V1 et PDF-V2, le moteur de Recherche sur les forums , la Liste des Contributions de Corbin. ----------------------------- Quelques sites de référence --------------------------- PHP: Le site du Zéro et PHP Débutant avec la DOC en français -- HTML: Self HTML - WebProgrammation -- CSS: OpenWeb - AlsaCréations - CSS/Edge -- Autres ressources: - XajaX - highslide js Les bons outils : EasyPHP - WAMP-5 - - Notepad++ - Firefox et son extension WebDeveloper Le gène idéal c'est le gène original. Le génie des halles est un Génie des Alpages qui tente d'être à la page. (Merci f'murrr pour les cours de philosophie de chien) |
|
26 Jul 2007, 00:52
Message
#10
|
|
Ceinture jaune OSC Groupe : Membres Messages : 60 Inscrit : 18-July 07 Membre no 18410 |
Bonjour,
C'est ce que je voudrais faire mais je voudrais que pour les categorie 41 et 25 qui sont les deux categorie principales l'affihage reste normal (c'est à dire affichage des vignette des sous categorie) mais que lorsque que l'on est dans dans la sous categorie 41-44 par exemple elle s'affiche comme tu viens de l'expliquer. Merci de me dire s'il il ya une solution ? |
|
Version bas débit | Nous sommes le : 28th March 2024 - 22:43 |
Ce site est déclaré auprès de la commision Nationale de l'Informatique et des Libertés (déclaration n°: 1043896) |