Ich habe einige interessante zu Custom Options Produktfragen: -Magento - Get Benutzerdefinierte Option Wert Details von Optionswert ID
Gibt es einen Unterschied zwischen Optionen & Benutzerdefinierte Optionen? Das ist, weil ich zwei verschiedene Eigenschaften für jede Produktdetails gefunden haben, in fast allen produktbezogenen Module: -
options
custom_options
Allerdings gibt es nur eine Klasse nur für die Produktoption, die sich um die benutzerdefinierten Optionen kümmert. Bitte jemanden diesen Punkt klären.
Ich versuche, die benutzerdefinierten Optionen eines geordneten Elements, einschließlich der benutzerdefinierten Optionspreis und Preistyp abrufen. Das Problem ist, dass Magento nur den Optionswert für das entsprechende Bestellelement speichert und nicht alle Details (wie Preis für benutzerdefinierte Option & Preistyp).
Also habe ich ein Objekt dieser KlasseMage_Catalog_Model_Product_Option_Value
erstellt, unter Berücksichtigung nur des benutzerdefinierten Optionstypsdrop_down
. Ich habe meinen Code unten angegeben, aber es ist immer noch vergeblich und bringt nicht die gewünschten Ergebnisse. Kann jemand bitte diesen Code korrigieren und mir helfen?
-Code für den Punkt # 2: -
echo "<pre>";
// $collection contains the whole Order Collection
foreach ($collection as $order) {
foreach ($order->getAllItems() as $item) {
$customOptions = $item->getProductOptions();
foreach ($customOptions['options'] as $_eachOption) {
// Value ID is stored in this field "option_value"
$objModel = Mage::getModel('catalog/product_option_value')->load($_eachOption['option_value']);
// This should provide all the details of this particular Option Value as chosen by the Customer when ordering this Product, but unfortunately it doesn't
print_r($objModel->getData());
/**
* This gives the output as, without any details on Price and Price Type:-
* Array
* {
* [option_type_id] => 13014
* [option_id] => 4921
* [sku] => XBPS22
* [sort_order] => 0
* }
*/
unset($objModel);
}
}
}
echo "</pre>";
Nachdem einige Kontrollen zu tun, fand ich, dass der Preis auf jede Option Werte bezogen in catalog_product_option_type_price
Datenbanktabelle gespeichert ist, und der Preis mit jedem im Zusammenhang Optionen sind in catalog_product_option_price
Datenbanktabelle gespeichert. Es muss also eine Möglichkeit geben, wie Magento die entsprechenden Preise für den benutzerdefinierten Optionswert abruft. Bitte erleuchte mich und korrigiere den obigen Code?
Vielen Dank an alle, im Voraus!
Hey, wie kann ich '$ value-> setPrice()' Ich möchte den Preis der Optionen ändern Dank. –
Ich sehe, dass Sie die Werte aus Drop-Down-Optionstypen ausgeben, wie sieht es mit den Textfeldwerten aus? Ich versuche meine Daten zu sammeln, nachdem der Artikel dem Warenkorb hinzugefügt wurde. Danke im Voraus. – NotJay