ฉันใช้ Magento CE 1.7.0.2 กับ SOAPv2 และ WS-I ฉันพยายามที่จะปรับปรุงผลิตภัณฑ์ที่มีcatalogProductUpdate
-Method
คำอธิบายในตัวอย่างรหัสด้านล่างได้รับการอัพเดต แต่ผู้ผลิต - แอตทริบิวต์ (= เลือก) ไม่ได้ ผลจากการมีcatalogProductUpdate
bool(true)
ฉันลองใช้รูปแบบ (ไม่ดีเกินไป แต่ฉันหมดหวัง ;-)) รูปแบบต่าง ๆ เช่น:
- กำหนดค่าจำนวนเต็ม 777 เพื่อ
$manufacturer->value
ตั้งค่า - ภายใน / ไม่มีฟิลด์เพิ่มเติม _attributes ตั้งรหัสผลิตภัณฑ์ (แต่ฉันแน่ใจว่ามันจะต้องมีการตั้งค่าภายในเพิ่มเติม _attributes)
- ตั้งชื่อผู้ผลิต
$manufacturer->value
แทนค่า 777
รหัส:
$newProductData = new stdClass();
$additionalAttrs = array();
$manufacturer = new stdClass();
$manufacturer->key = "manufacturer";
$manufacturer->value = "777";
$additionalAttrs['single_data'][] = $manufacturer;
$newProductData->description = "Description Test1";
$newProductData->additional_attributes = $additionalAttrs;
$result = $client->catalogProductUpdate((object)array('sessionId' => $sessionId,
'productId' => "2110000010058 ",
'productData' => (object)$newProductData,
NULL,
'sku'
));
แก้ไข:
- ฉันทดสอบด้วย SOAPv2 โดยไม่มี WS-I - ใช้งานได้ดี
- ฉันยังสร้างคุณลักษณะอื่นสำหรับการทดสอบด้วยการตั้งค่าเดียวกัน (ดร็อปดาวน์ขอบเขต ... ) ซึ่งยังไม่ได้รับการอัปเดตด้วย SOAPv2 WS-I แต่ทำกับ SOAPv2 ดังนั้นคุณลักษณะที่สร้างขึ้นใหม่เหล่านี้จะทำงานเป็นคุณลักษณะของผู้ผลิต
- การพยายามตั้งค่าของฟิลด์ข้อความในส่วนเพิ่มเติม _attribute ไม่ทำงาน
ความคิดลิงก์คำแนะนำเกี่ยวกับเรื่องนี้?
ลิงก์: http://www.magentocommerce.com/api/soap/catalog/catalogProduct/catalog_product.update.html