2010-06-28 11 views
3

J'ai ajouté un produit packagé dans Magento programme, en utilisant toutes les options/propriétés du produit simple & l'utilisation des 3 méthodes spécifiquement pour les options Bundle: -Comment paramétrer le type de sku et le type de prix du produit Bundle par programme dans Magento?

  1. setBundleOptionsData()
  2. setBundleSelectionsData()
  3. setCanSaveBundleSelections()

le résultat est que le produit vient d'être ajouté Bundle montre très bien dans la section d'administration, avec certaines valeurs par défaut prises du suivi propriétés ing: -

  1. sku_type
  2. weight_type
  3. shipment_type
  4. price_view
  5. type_de_tarification

Cependant, ce produit Bundle n'affiche dans la partie avant du tout, Je ne sais pas pourquoi. Est-ce que quelqu'un peut m'aider s'il vous plaît? J'ai essayé de chercher mais en vain. S'il vous plaît quelqu'un s'il vous plaît suggérer ce que je fais mal?

De plus, j'ai besoin de contrôler les propriétés spéciales de Bundle Product mentionnées ci-dessus, afin qu'elles puissent également être modifiées lors de l'insertion par programmation. Quelqu'un peut-il m'aider s'il vous plaît dans ce point également?

Toute aide est grandement appréciée.

+0

Pour la question de visibilité, voir ici: http://stackoverflow.com/questions/2493141/ –

Répondre

2

Après un bon nombre de tests, je l'ai trouvé à l'intérieur.
Si vous regardez très clairement la méthode "saveAction()", dans la page "ProductController.php" du module "Adminhtml", vous trouverez une ligne comme "$product->save();". Si vous faites quelques incursions dans cette méthode "save()", vous verrez que Magento utilise une méthode "setData()", pour les propriétés du produit simple. Par conséquent, si vous utilisez les champs "price", "weight", "sku", "name", "description", "short_description", ... en tant que tableau 1D, il vous suffit d'ajouter les champs requis propriétés du produit Bundle à cette liste de tableau, et Magento fera le reste.

Donc ce que je veux dire est que le tableau contiendra les éléments suivants aussi simple que cela: -

Array 
(
    ['name'] => 'simple', 
    ['description'] => 'test', 
    ['short_description'] => 'simple test', 
    ['sku_type'] => 0, 
    ['sku'] => 'simple01', 
    ['weight_type'] => 1, 
    ['weight'] => 12, 
    ['price_type'] => 1, 
    ['price'] => 250, 
    ['shipment_type'] => 0 
) 

Maintenant, vous devez passer ce tableau par la méthode « setData() », et vous allez bingo. Rappelez-vous que Magento est vraiment beau si vous croyez, sinon c'est aussi dur & impoli.
J'espère que ça aide!

+1

C'est magnifique grâce à des programmeurs comme vous, qui passent du temps à creuser le code et à découvrir comment cela fonctionne.Je ferai la même chose :) Pour les autres qui veulent des trucs et astuces rapides, ils détestent Magento: P – nXqd

+1

@Vdt - Merci beaucoup pour tous vos gentils mots et Bravo que vous l'ayez trouvé utile! Je crois aussi que vous êtes dans le chemin et le processus de devenir l'un des beaux développeurs! Bonne chance! –

Questions connexes