Question

Supposons que mon site vend des voitures et autres moyens de transport.J'ai un type de contenu Produit et il est classé avec une taxonomie, par exemple.Voitures, Bicyces, Des Bateaux, Des Hélicoptères.

L' Product content-type a certains CCK pour décrire les caractéristiques de base du produit, tels que horsepower, number_of_wheels, et top_speed.

J'ai utiliser des vues pour remplacer le terme de taxonomie page, et de montrer quelques exposés filtres permet à l'utilisateur d'affiner leur choix.

Mon problème, c'est que certains de mes exposés les filtres ne sont pas vraiment applicables lors de l'affichage de certains termes.Par exemple, si je regarde les Vélos terme, je ne veux pas être en mesure de filtrer par horsepower!Ou si je regarde les Bateaux, je ne veux pas être en mesure de filtrer par number_of_wheels (parce que aucun de mes bateaux ont des roues).

Donc, il y a un moyen de masquer un exposé de filtre pour un champ si pas de lignes dans la vue de contenir des données dans ce domaine?

Était-ce utile?

La solution

Avoir un seul type de contenu "Produits" Bien que simple, entraînera finalement des licenciements et des problèmes, tels que ce que vous expérimentez maintenant.Il est de loin préférable d'ajouter des types de contenu individuels;Voitures, vélos, bateaux et sets des champs uniques.De cette façon, vous pouvez créer facilement des filtres sur le type de contenu.

Si vous deviez créer la table dans MySQL, n'auriez-vous pas une seule table Products?J'espère que non.; -)

Autres conseils

Si vous ne pouvez pas branler vos types de contenu, le Gary Green suggère, faisant des vues séparées (avec des filtres de contrôle plus granulaires), vous pouvez peut-être utiliser Hook_form_alter pour vérifier la valeur par défaut du champ de taxonomie correspondant àVotre type de produit (bicyclettes, bateaux, etc.), puis supprimez les champs en définissant #Access pour ces champs à FALSE.

Si vous n'êtes pas à l'aise avec Hook_Form_alter, vous pouvez également définir ceux-ci pour afficher: Aucun avec jQuery (ne les supprimez pas, ni les formulaires ne transmettent pas le test de sécurité / d'intégrité à la soumission).Malheureusement, vous ne pouvez pas faire cela avec des CSS simples car, au moins dans D6, les éléments d'entrée du filtre CCK n'ont pas suffisamment d'identifiant ou de classes spécifiques pour permettre une manipulation facile CSS.

Cela présuppose que vous avez des pages de vues séparées pour chacun des types de produits déterminés par la taxonomie;Votre description ressemble à ce type de configuration.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top