Question

Je suis sur le point de mettre en place une boutique en ligne et je suis un peu « testing » si magento (1.7., Community Edition) correspond à mes besoins. Je pense que j'ai eu l'idée derrière catégoriser et l'attribution des produits. Mais j'ai une question aux attributs concernant les produits - ou en détail: pour les produits configurables

.

Est-il possible de valeurs d'attribut "héritent" (options) d'un autre attribut existant?

Je vais vous donner un exemple pour visualiser ma question:

Le mot Let nous vendons des boîtes. Nous avons trois types de boîtes différentes:

  1. boîtes uni-couleur ( "boîte couleur")
  2. les boîtes avec une séparée "top-color"
  3. boîtes avec une impression spéciale à ce sujet, qui a sa propre couleur ( « couleur de surbrillance »)

je devrais Assigner des couleurs au type de boîte # 1, les valeurs possibles

  • noir,
  • blanc,
  • orange.

Type Box # 2 pourrait venir comme

  • boîte noire / haut noir (il peut sembler superflu, mais il y a une différence de boîtes unidirectionnels de couleur),
  • boîte noire / haut blanc,
  • boîte noire / top orange,
  • boîte blanche / haut noir,
  • boîte blanche / haut blanc,
  • boîte blanche / top orange,
  • et ainsi de suite.

Et enfin, le type de boîte # 3 pourrait venir comme

  • boîte noire / haut / highlight noir noir,
  • noir / blanc / orange,
  • noir / noir / blanc,
  • etc.

Je pense que vous avez l'idée.

Je voudrais avoir un attribut de couleur-options que je maintiendrais (comme ajouter de nouvelles couleurs, supprimer les anciens, etc.) -. Et l'utiliser comme trois différents types de jeux de couleurs configurables

Pour être en mesure de créer des produits configurables j'ajouter la couleur attribut à mon jeu d'attributs spéciaux « cases » (s). Mais en ce qui concerne les deux couleurs des boîtes, je ne suis pas en mesure d'ajouter l'attribut de couleur une seconde fois.

est-il un autre moyen (de simples) pour y parvenir? Depuis que je suis nouveau à Magento je ne voudrais pas creuser trop profondément dans le code ou même souhaite développer un module (?).

Merci à l'avance, je vous remercie de vos réponses: -)

Était-ce utile?

La solution

Magento donne le soutien pour ce que vous avez besoin, mais il est un peu un long shot.
Vous êtes en mesure de définir un modèle source différent de vos listes déroulantes.
La prise de Let par exemple le tax_class_id d'attribut. Il est un menu déroulant, mais il n'a pas les valeurs stockées dans la base de données (tables eav_attribute_option et eav_attribute_option_value). Le modèle source est tax/class_source_product que dans une instance non personnalisé se traduit par Mage_Tax_Model_Class_Source_Product de classe.
Dans le cas de tax_class_id les options affichées dans le menu déroulant sont le résultat de Mage_Tax_Model_Class_Source_Product::getAllOptions().
Vous pouvez créer une extension personnalisée avec un modèle personnalisé (ou 3 - un pour chaque attribut). Définir ces modèles pour le modèle source pour vos attributs et ajoutez votre logique dans la méthode de getAllOptions(). Dans cette méthode, vous pouvez obtenir les valeurs d'une table ou un code dur eux, même les passer à travers une API externe.
Vos modèles de source personnalisés devraient étendre Mage_Eav_Model_Entity_Attribute_Source_Abstract et devraient avoir les méthodes suivantes:

  • getAllOptions() - c'est là la logique est. Cela devrait retourner un tableau de tableaux. le tableau devrait ressembler à niveau inférieur array('value'=>'SOME NUMBER HERE', 'label'=>'Label here');
  • getOptionText() devrait être similaire à celui Mage_Tax_Model_Class_Source_Product
  • toOptionArray() semblable à celui de Mage_Tax_Model_Class_Source_Product.
  • getFlatColums() semblable à celui Mage_Tax_Model_Class_Source_Product juste modifier le commentaire de la colonne
  • getFlatUpdateSelect() similaire à la un dans Mage_Tax_Model_Class_Source_Product

Cochez cette case pour petit tutoriel sur la façon d'ajouter un attribut avec des options personnalisées
Suivez également comment le modèle source pour tax_class_id est faite. Il aide.

Autres conseils

Vous devriez être en mesure d'utiliser un seul attribut pour cela, puisque la couleur attribtue ne montre que la valeur sélectionnée. Aussi les produits configurables ne montre que les couleurs associées aux produits simples.

Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top