Magento 2.1.9: วิธีลบราคาขายในหลายร้านค้า?


12

มีวิธีใดบ้างที่จะลบราคาขายในร้านค้าต่างๆ? ใช้สคริปต์ใด ๆ หรือใช้วิธีอื่นยกเว้นผู้ดูแลระบบ?

ฉันใช้ร้านค้าห้าแห่งร้านค้าเริ่มต้นนั้นง่าย แต่ร้านค้าอื่น ๆ ใช้เวลานานเพราะคุณสามารถเปลี่ยนผลิตภัณฑ์ง่าย ๆ ได้ด้วยตนเองและดูเหมือนว่าคุณไม่สามารถเปลี่ยนผลิตภัณฑ์ที่กำหนดค่าได้

โดยทั่วไปจะใช้เวลาประมาณ 20 นาทีในการถอดรองเท้าออกซึ่งไม่ถูกต้อง

คำตอบ:


1

ราคาถูกกำหนดไว้ที่ระดับผลิตภัณฑ์อย่างง่ายใน Magento 2 (และผลิตภัณฑ์ที่กำหนดค่าได้จะได้รับราคาพิเศษจากผลิตภัณฑ์แบบง่าย ๆ ที่อยู่ด้านล่าง)

วิธีที่เร็วที่สุดในการทำอย่างถูกต้องคือการใช้ REST API ภายในสคริปต์ นี่เป็นวิธีที่ดีที่สุดหากคุณเป็นผู้เริ่มต้น - Magento ได้สร้างสิ่งนี้เป็นอินเทอร์เฟซสำหรับการรวมภายนอกซึ่งควรใช้ทุกที่ที่เป็นไปได้

http://devdocs.magento.com/swagger/index_20.html#!/catalogProductRepositoryV1

ปลายทางที่ถูกต้องคือ PUT / V1 / products / {sku} ของ catalogProductRepository -

โปรดทราบว่าคุณต้องใส่รหัส storeview ลงใน URL การโทรตามที่อธิบายไว้ที่นี่

http://devdocs.magento.com/guides/v2.0/rest/rest_endpoints.html

นี่คือโพสต์ที่ดีเกี่ยวกับการใช้สคริปต์กับ REST API

GET หรือ SET สินค้าราคาพิเศษโดยใช้ REST API

อีกทางเลือกหนึ่งคือการนำเข้า CSV หลายร้านโดยใช้ฟังก์ชั่นนำเข้า Magento 2 ซึ่งเป็นการดีที่สุดถ้าคุณไม่คุ้นเคยกับการพัฒนา Magento / PHP:

นี่คือบทความเกี่ยวกับมัน:

https://www.alexcorradi.org/blog/a-guide-on-how-to-import-export-products-in-magento-2

มิฉะนั้นหากคุณมีสภาพแวดล้อมการทดสอบและมั่นใจในการเขียนโค้ดมากขึ้นคุณสามารถสร้างสคริปต์ของคุณเองเพื่ออัปเดต:

ภายในชั้นเรียนที่คุณมี:

protected $action;

public function __construct(\Magento\Catalog\Model\Product\Action $productAction) {
   $this->action = $productAction;
}

public function updatePrice($productIds, $data, $storeId) {
    $this->action->updateAttributes($productIds, $data, $storeId);
}

จากนั้นให้เรียกใช้ดังต่อไปนี้

 $specialPrice = null; // OR '' can't remember off the top of my head which clears it - perhaps either.

 $data = ['special_price' => $specialPrice];
 $storeId = 1; //whatever store id you like
 $productIds = [1,2,3,4,5,6,7]; //whatever product ids you wish to change.

 $this->updatePrice($productIds, $data, $storeId);

วิ่งสำหรับแต่ละร้าน

ขออภัยในความผิดพลาดใด ๆ ฉันแค่พิมพ์โดยหน่วยความจำ โปรดรันบนสภาพแวดล้อมการทดสอบก่อน!


1

ลอง 1: คุณสามารถใช้ปลั๊กอิน Approch เพื่ออัพเดทราคาขาย

Try2: คุณสามารถลบ sell_price ออกจากชุดแอตทริบิวต์เริ่มต้นหรือปิดใช้งานคุณลักษณะนี้ได้โดยไม่ต้องใช้ความพยายามใด ๆ


ลอง 1: ปลั๊กอินใด ๆ ? Try2: ใช่ แต่ฉันได้เพิ่มราคาที่แตกต่างกันสำหรับร้านค้าทั้งหมดดังนั้นฉันจะปิดการใช้งานคุณลักษณะนี้ได้อย่างไร
Aasim Goriya

ใช่คุณสามารถปิดการใช้งานคุณลักษณะที่
Prince Yadav

ฉันหมายถึงคุณลักษณะที่คุณกำลังพูดถึง?
Aasim Goriya

"sell_price" จำเป็นต้องปิดการใช้งานหรือลบออกจาก attribute_set เริ่มต้น
Prince Yadav

1

ใช้กฎราคาแคตตาล็อก การตลาด> กฎราคาแคตตาล็อก

ด้วยวิธีนี้คุณสามารถกำหนดราคาขายตามร้านค้าทั้งหมดหรือร้านค้าที่เลือกและง่ายต่อการอัปเดตและเปิดใช้งานหรือปิดใช้งาน en mass

คุณสามารถตั้งค่าเงื่อนไขให้ตรงกับรูปแบบการผสมทั้งหมด: หมวดหมู่ / ผู้ผลิต / ขนาด / สี / sku / mpn

คุณยังสามารถสร้างแอททริบิวในแบ็กเอนด์ที่คุณสามารถใช้สำหรับกฎราคาแคตตาล็อก เช่น. ฉันมีคุณลักษณะ 'ฤดู' พร้อมตัวเลือกแบบหล่นลงเช่น 2017-4 ซึ่งเป็นผลิตภัณฑ์ฤดูหนาว

ดังนั้นฉันจึงกำหนดกฎราคาแคตตาล็อกสำหรับ: ผู้ผลิต = Billabong, ประเภท = เสื้อ, ฤดูกาล = 2017-4 และใช้ 20% กับผลิตภัณฑ์ที่ตรงกับเกณฑ์เหล่านั้น และคุณสามารถตั้งค่าเว็บไซต์ที่ใช้กฎนี้รวมถึงวันที่คุณต้องการให้กฎทำงาน

คุณยังสามารถใช้สีหรือขนาดในกฎของคุณ สิ่งนี้จะเป็นประโยชน์อย่างมากเมื่อผลิตภัณฑ์ไม่ได้เปลี่ยนชื่อเป็นเวลาสองสามปีและมี colorway แบบเก่าที่คุณต้องการกำจัดคุณสามารถตั้งค่าการผสมสีและขนาดเดียวที่จะขายได้ในขณะที่ส่วนที่เหลือของ ผลิตภัณฑ์ที่กำหนดค่าได้ยังคงราคาปกติ


ขอบคุณสำหรับการตอบสนองจริง ๆ แล้วฉันได้ตั้งราคาขายสำหรับร้านค้าหลายร้านของฉันทั้งหมดแล้วดังนั้นฉันต้องลบมันออกจากร้านค้าทั้งหมดของฉัน นอกจากนี้ถ้าฉันได้เพิ่มราคาขายสำหรับผลิตภัณฑ์ที่เรียบง่ายของทุกผลิตภัณฑ์ที่เกี่ยวข้องแล้วที่จะลบดังนั้นโปรดแนะนำฉันหากคุณมีวิธีการแก้ปัญหาสำหรับหนึ่งนี้ ขอบคุณล่วงหน้า
Aasim Goriya

ไปที่แคตตาล็อกเลือกผลิตภัณฑ์ทั้งหมด> อัปเดตแอตทริบิวต์> ตรวจสอบ "ราคาพิเศษ" และปล่อยว่างไว้ ที่จะลบราคาขายจากผลิตภัณฑ์ทั้งหมดและจากนั้นคุณสามารถเริ่มใช้กฎรถเข็น หากคุณมีผลิตภัณฑ์จำนวนมากคุณอาจต้องการทำสิ่งนี้ด้วยแบทช์ 500 รายการในแต่ละครั้งเพื่อทำให้สิ่งต่าง ๆ ง่ายขึ้นและไม่หมดเวลา ต้องใช้เวลาสักครู่ก่อนที่กระบวนการจะทำงาน แต่ในแบตช์ขนาดเล็กก็ไม่ได้เลวร้ายเกินไป
dawhoo
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.