วิธีการตั้งค่าแอตทริบิวต์แบบหลายตัวเลือกของฉลากโดยทางโปรแกรม


16

หากมีคุณสมบัติแบบหลายตัวเลือกและต้องการตั้งค่าการเลือกบนผลิตภัณฑ์

$selectedOptions = "red,green,blue";
$product->..... // # what to do?

ฉันจะทำสิ่งนั้นได้อย่างไร

คำตอบ:


24

สามารถเลือกแอตทริบิวต์แบบเลือกได้หลายรายการเป็นรายการที่คั่นด้วยเครื่องหมายจุลภาค (หรืออาร์เรย์) ที่มีรหัสค่าแอตทริบิวต์

ดังนั้นก่อนอื่นเราต้องแปลงค่าจริงเป็นรหัสภายในของวีโอไอพี

$attrCode = 'color_base';
$sourceModel = Mage::getModel('catalog/product')->getResource()
    ->getAttribute($attrCode)->getSource();
$valuesText = explode(',', 'red,green,blue');
$valuesIds = array_map(array($sourceModel, 'getOptionId'), $valuesText);
$product->setData($attrCode, $valuesIds);
$product->save();

ไม่ทำงานหน้านี้โหลดต่อไปด้วยรหัสนี้
Mp de la Vega

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.