คู่มือปลั๊กอิน WooCommerce ขั้นสูงสุดพร้อมคำอธิบายโค้ดโดยละเอียด: ตั้งแต่การติดตั้งไปจนถึงการพัฒนาแบบกำหนดเอง

อ่าน 3 นาที
2026-03-16
2026-06-04
2,714
I earn commissions when you shop through the links below, at no additional cost to you.

การติดตั้งและการตั้งค่าพื้นฐานของ WooCommerce

กระบวนการติดตั้ง WooCommerce นั้นเรียบง่าย แต่การตั้งค่าเริ่มต้นที่ถูกต้องเป็นรากฐานสำคัญในการสร้างเว็บไซต์อีคอมเมิร์ซที่มั่นคง ก่อนอื่น คุณจำเป็นต้องมีสภาพแวดล้อมเซิร์ฟเวอร์ที่รัน PHP 7.4 หรือสูงกว่า และติดตั้ง WordPress ไว้แล้ว ผ่านหน้า “ปลั๊กอิน” > “ติดตั้งปลั๊กอิน” ในแอดมินของ WordPress ให้ค้นหา “WooCommerce” และคลิกติดตั้งและเปิดใช้งาน เมื่อเปิดใช้งานแล้ว ระบบจะเริ่ม “ตัวช่วยตั้งค่า” โดยอัตโนมัติ เพื่อแนะนำคุณในการตั้งค่าพื้นฐานของร้านค้า

ในตัวช่วยตั้งค่า คุณจำเป็นต้องดำเนินการตามลำดับดังนี้: ตั้งค่าที่ตั้งร้านค้า สกุลเงิน และหน่วย; กำหนดวิธีการชำระเงิน (เช่น PayPal, Stripe หรือการโอนเงินผ่านธนาคาร); ตั้งค่ากฎการคำนวณค่าจัดส่ง (เช่น การจัดส่งฟรี ค่าจัดส่งคงที่ หรืออัตราตามเวลาจริงตามน้ำหนัก/ที่อยู่); และแนะนำให้ติดตั้งส่วนขยายที่จำเป็นบางส่วน เช่น WooCommerce Payments หรือปลั๊กอินสำหรับท้องถิ่น หลังจากเสร็จสิ้นตัวช่วยตั้งค่า คุณจะเข้าสู่แผงควบคุมการตั้งค่าหลักของ WooCommerce มีหลายส่วนสำคัญที่ต้องตั้งค่าอย่างละเอียด: ในตัวเลือก “ทั่วไป” คุณสามารถตั้งค่าสถานที่ขายและการคำนวณภาษี; ในตัวเลือก “ผลิตภัณฑ์” คุณสามารถกำหนดหน่วยวัด การรีวิวสินค้าและการจัดการสต็อก; หน้า “ชำระเงิน” เป็นสถานที่สำหรับกำหนดเกตเวย์การชำระเงินทั้งหมดและขั้นตอนการชำระเงิน; ตัวเลือก “การจัดส่ง” ใช้สำหรับจัดการพื้นที่จัดส่ง วิธีการและบรรจุภัณฑ์

ขั้นตอนหนึ่งที่มักถูกมองข้ามแต่มีความสำคัญอย่างยิ่งคือการกำหนดลิงก์ถาวร ใน “การตั้งค่า” > “ลิงก์ถาวร” ของ WordPress ตรวจสอบให้แน่ใจว่าไม่ได้ใช้โครงสร้าง “ธรรมดา” แนะนำให้ใช้ “ชื่อโพสต์” หรือโครงสร้างที่กำหนดเอง ซึ่งเป็นประโยชน์ต่อ SEO ของหน้าสินค้า นอกจากนี้ ในแท็บการตั้งค่า “ขั้นสูง” ของ WooCommerce คุณจำเป็นต้องกำหนดหน้า WordPress ที่ตรงกันให้กับหน้าต่างๆ (เช่น ตะกร้าสินค้า การชำระเงิน บัญชีของฉัน ฯลฯ) ซึ่งหน้าเหล่านี้ถูกสร้างขึ้นโดยอัตโนมัติเมื่อติดตั้งปลั๊กอิน

แนะนำให้อ่าน คู่มือการพัฒนา WooCommerce แบบกำหนดเอง: บทช่วยสอนปฏิบัติจริงแบบครบวงจรตั้งแต่เริ่มต้นจนถึงระดับสูง

การตั้งค่าข้อมูลพื้นฐานของร้านค้า

การตั้งค่าข้อมูลพื้นฐานของร้านค้าส่วนใหญ่อยู่ในตัวปรับแต่ง WordPress และการตั้งค่าทั่วไปของ WooCommerce คุณต้องแน่ใจว่าที่อยู่ร้านค้า อีเมลบริการลูกค้า และหมายเลขโทรศัพท์ถูกต้อง ข้อมูลเหล่านี้จะปรากฏในแจ้งเตือนคำสั่งซื้อ ใบแจ้งหนี้ และส่วนท้ายของหน้า นอกจากนี้ ใน “ตัวเลือกสกุลเงิน” ภายใต้การตั้งค่า “ทั่วไป” คุณสามารถกำหนดรูปแบบสกุลเงินได้ เช่น หยวนจีน (¥123.00) หรือดอลลาร์สหรัฐ ($123.00)

UltaHost WordPress โฮสติ้ง
การรับประกันคืนเงินภายใน 30 วัน, แบนด์วิธและฐานข้อมูลไม่จำกัด, การป้องกัน DDoS ฟรี, ซื้อ 3 ปีลดราคา 50%

การรวมเกตเวย์การชำระเงินและการจัดส่ง

เกตเวย์การชำระเงินเป็นเส้นเลือดใหญ่ของอีคอมเมิร์ซ WooCommerce มีวิธีการชำระเงินในตัวหลายวิธี เช่น WC_Gateway_BACS(การโอนเงินผ่านธนาคาร)WC_Gateway_CHEQUE(การชำระด้วยเช็ค) และ WC_Gateway_COD(ชำระเงินปลายทาง) การเปิดใช้งานเกตเวย์ขั้นสูง เช่น Stripe หรือ PayPal โดยปกติต้องติดตั้งปลั๊กอินแยกต่างหากและกำหนดค่าคีย์ API ตัวอย่างเช่น เมื่อกำหนดค่า Stripe คุณจะต้องกรอกคีย์ที่เผยแพร่และคีย์ลับในหน้าตั้งค่าที่เกี่ยวข้อง

การตั้งค่าการจัดส่งก็มีความสำคัญเช่นกัน คุณสามารถสร้างกฎค่าจัดส่งแยกต่างหากสำหรับประเทศหรือภูมิภาคต่างๆ ใน “พื้นที่จัดส่ง” ตัวอย่างเช่น ตั้งค่าพื้นที่สำหรับจีนแผ่นดินใหญ่ และเพิ่มวิธีการต่างๆ เช่น “จัดส่งฟรี” “อัตราคงที่” และ “รับสินค้าเองในพื้นที่” โดยการใช้ woocommerce_shipping_init ฮุค นักพัฒนาสามารถสร้างคลาสวิธีการจัดส่งที่กำหนดเองได้อย่างสมบูรณ์

ฟังก์ชันหลักและการจัดการข้อมูล

WooCommerce รวมข้อมูลอีคอมเมิร์ซทั้งหมดไว้ในประเภทบทความและอนุกรมวิธานที่กำหนดเองของ WordPress ผลิตภัณฑ์ถูกจัดเก็บเป็น product ประเภทบทความ ในขณะที่คำสั่งซื้อสอดคล้องกับ shop_order ประเภทบทความ การเข้าใจโมเดลข้อมูลนี้เป็นข้อกำหนดเบื้องต้นสำหรับการพัฒนาที่กำหนดเองขั้นสูง

การจัดการผลิตภัณฑ์เป็นหัวใจสำคัญ WooCommerce รองรับสี่ประเภทผลิตภัณฑ์:simple(ผลิตภัณฑ์แบบง่าย)grouped(ผลิตภัณฑ์แบบจัดกลุ่ม),external(ผลิตภัณฑ์ภายนอก/ผลิตภัณฑ์ที่เกี่ยวข้อง) และ variable(ผลิตภัณฑ์แบบแปรผัน) ผลิตภัณฑ์แบบแปรผันช่วยให้คุณสามารถกำหนดคุณลักษณะที่แตกต่างกัน (เช่น สี, ขนาด) และราคา, สต็อก, และ SKU ที่สอดคล้องกันสำหรับสินค้าชิ้นเดียวกันได้ เมื่อแก้ไขสินค้าในระบบหลังบ้าน คุณจะใช้ชุดกล่องเมตาดาต้าสำหรับจัดการ SKU สต็อก, ราคา, สถานะสินค้าคงคลัง, ข้อมูลการจัดส่ง, และแกลเลอรีรูปภาพสินค้าที่เชื่อมโยง

แนะนำให้อ่าน WooCommerce คืออะไรและสถาปัตยกรรมหลัก

ระบบหลังบ้านการจัดการคำสั่งซื้อมอบภาพรวมการขายที่สมบูรณ์ แต่ละคำสั่งซื้อคือ shop_order โพสต์ ที่บันทึกข้อมูลลูกค้า, สินค้าที่ซื้อ, ราคา, สถานะการชำระเงิน, และประวัติหมายเหตุคำสั่งซื้อ การจัดการสถานะมีความสำคัญอย่างยิ่ง โดยสถานะเริ่มต้นประกอบด้วย pending(รอการชำระเงิน),processing(กำลังดำเนินการ)on-hold(หยุดชั่วคราว) และ completed(เสร็จสิ้นแล้ว) คุณสามารถใช้ wc_get_order_statuses ฟังก์ชันเพื่อรับสถานะทั้งหมด และผ่าน woocommerce_register_shop_order_post_statuses ตัวกรองเพื่อลงทะเบียนสถานะที่กำหนดเอง

การจัดการประเภทและคุณลักษณะของผลิตภัณฑ์

คุณลักษณะของผลิตภัณฑ์เป็นเครื่องมือสำคัญในการจัดระเบียบแคตตาล็อกสินค้าที่ซับซ้อน คุณสามารถสร้างคุณลักษณะระดับโลก เช่น “สี” หรือ “ขนาด” ได้ที่ “ผลิตภัณฑ์” > “คุณลักษณะ” จากนั้น เมื่อแก้ไขผลิตภัณฑ์ที่สามารถเปลี่ยนแปลงได้ ให้ใช้คุณลักษณะเหล่านี้เพื่อสร้าง “ชุดคุณลักษณะ” และตั้งค่าข้อมูลตัวแปรแยกต่างหากสำหรับแต่ละชุด (เช่น “สีแดง-ขนาดใหญ่”) ในระดับโค้ด คุณสามารถใช้ WC_Product_Variable คลาสและเมธอด get_available_variations() เพื่อดึงและจัดการข้อมูลตัวแปรทั้งหมดได้

การประมวลผลข้อมูลคำสั่งซื้อและลูกค้า

WooCommerce ใช้ WC_Order คลาสสำหรับการห่อหุ้มข้อมูลคำสั่งซื้อ ผ่านคลาสนี้ คุณสามารถสร้างหรืออัปเดตคำสั่งซื้อแบบโปรแกรมได้ ตัวอย่างเช่น รหัสต่อไปนี้แสดงวิธีการสร้างคำสั่งซื้อใหม่และเพิ่มสินค้า:

hosting.com 共享主机
高性能,配备 AMD EPYC CPU、NVMe SSD 存储和 LiteSpeed,全天候24小时、全天候的专家内部支持,高级安全措施,包括 SSL、暴力破解、恶意软件和 DDoS 防护,节省高达 73%
// 创建一个新订单对象
$order = wc_create_order();

// 通过商品ID获取商品对象并添加到订单中
$product = wc_get_product(123);
$order->add_product($product, 2); // 数量为2

// 设置客户地址
$order->set_address(array(
    'first_name' => '张',
    'last_name'  => '三',
    'email'      => '[email protected]',
    'phone'      => '13800138000',
), 'billing');

// 计算总额并保存
$order->calculate_totals();
$order->save();

ข้อมูลลูกค้าจะถูกผูกอย่างลึกซึ้งกับผู้ใช้ WordPress (WP_User) WooCommerce ผ่านทาง wc_get_customer_order_countwc_get_customer_total_spent ฟังก์ชันต่างๆ ขยายความสามารถของผู้ใช้

การผสานรวมธีมและการเขียนทับเทมเพลต

การผสานรวม WooCommerce กับธีมกำหนดประสบการณ์ส่วนหน้าของร้านค้า มันใช้ระบบเทมเพลตที่แข็งแกร่ง โดยไฟล์ที่แสดงผลส่วนหน้าทั้งหมด (เช่น รายการสินค้า, หน้าสินค้าเดี่ยว, ตะกร้าสินค้า) อยู่ในไดเรกทอรีปลั๊กอิน /templates/ โฟลเดอร์ เพื่อปรับแต่งเทมเพลตเหล่านี้โดยไม่ต้องแก้ไขไฟล์ปลั๊กอินหลัก คุณจำเป็นต้องเขียนทับพวกมันลงในธีมของคุณ

วิธีที่ถูกต้องคือ: สร้างโฟลเดอร์ชื่อ woocommerce ในไดเรกทอรีธีมที่ใช้งานของคุณ จากนั้นคัดลอกไฟล์เทมเพลต WooCommerce ที่คุณต้องการแก้ไขจากไดเรกทอรีปลั๊กอินไปยังโฟลเดอร์ใหม่นี้ และทำการแก้ไขในสำเนานั้น ตัวอย่างเช่น หากต้องการแก้ไขโครงสร้างหน้าสินค้าเดียว คุณต้องคัดลอก plugins/woocommerce/templates/single-product.phpthemes/your-theme/woocommerce/single-product.phpWooCommerce จะโหลดไฟล์เทมเพลตจากธีมของคุณก่อนเสมอ

แนะนำให้อ่าน คู่มือขั้นสูงสุดสำหรับการสร้างเว็บไซต์ด้วย WooCommerce: สร้างจักรวรรดิอีคอมเมิร์ซของคุณตั้งแต่เริ่มต้น

นอกจากจะเขียนทับไฟล์ทั้งหมดแล้ว คุณยังสามารถใช้ Action Hooks และ Filter Hooks เพื่อแทรกหรือแก้ไขเนื้อหาในตำแหน่งเฉพาะได้ ตัวอย่างเช่นwoocommerce_before_single_product_summary ฮุคจะทำงานก่อนข้อมูลสรุปสินค้า เป็นตำแหน่งที่เหมาะสำหรับการเพิ่มแบนเนอร์โฆษณาที่กำหนดเอง

โครงสร้างไฟล์เทมเพลตที่กำหนดเอง

ไฟล์เทมเพลตของ WooCommerce มีโครงสร้างลำดับชั้นที่ชัดเจน ยกตัวอย่างเช่นลูปสินค้าarchive-product.php เป็นเทมเพลตหน้าหลักของร้านค้า ซึ่งจะเรียกใช้ content-product.php เพื่อแสดงผลแต่ละสินค้า โดยการแทนที่ไฟล์เหล่านี้ คุณสามารถเปลี่ยนวิธีการแสดงสินค้าในรายการได้อย่างสิ้นเชิง เช่น เปลี่ยนเลย์เอาต์เป็นกริดหรือรายการ หรือเพิ่มป้ายกำกับที่กำหนดเอง

โฮสติ้งแบบแชร์ของ InterServer
共享主机每月 $2.50 USD , 首月 $0.1 USD 优惠码 tryinterserver, 461个云应用脚本,一键安装。

การใช้ฮุคเพื่อขยายฟังก์ชันการทำงาน

ฮุคคือกระดูกสันหลังของส่วนขยาย WooCommerce ฮุคแอ็กชันอนุญาตให้คุณ “ดำเนินการ” รหัส เช่น การเพิ่มกล่องข้อมูลที่กำหนดเองหลังตารางรถเข็น

add_action('woocommerce_after_cart_table', 'my_custom_cart_message');
function my_custom_cart_message() {
    echo '<div class="custom-notice">ซื้อครบ 500 หยวน ส่งฟรี!</div>';
}

ฮุคตัวกรองอนุญาตให้คุณ “ปรับเปลี่ยน” ข้อมูล ตัวอย่างเช่น การใช้ woocommerce_add_to_cart_fragments ตัวกรองสามารถอัปเดตเนื้อหาของรถเข็นขนาดเล็กแบบไดนามิกได้:

add_filter('woocommerce_add_to_cart_fragments', 'update_mini_cart_count');
function update_mini_cart_count($fragments) {
    $fragments['div.cart-count'] = '<div class="cart-count">' . WC()-&gt;cart-&gt;get_cart_contents_count() . '</div>';
    return $fragments;
}

การปรับแต่งขั้นสูงและการปฏิบัติการพัฒนา

เมื่อฟังก์ชันในตัวและฮุคไม่สามารถตอบสนองความต้องการได้ ก็จำเป็นต้องมีการพัฒนาปรับแต่งลึกยิ่งขึ้น ซึ่งรวมถึงการสร้างประเภทสินค้าที่ปรับแต่งเอง การเขียนเกตเวย์การชำระเงินหรือการจัดส่งเฉพาะ และการบูรณาการกับระบบภายนอกผ่าน REST API

การสร้างประเภทสินค้าที่ปรับแต่งเองจำเป็นต้องขยาย WC_Product คลาส ก่อนอื่นคุณต้องกำหนดคลาสใหม่ที่สืบทอดจากมัน และลงทะเบียนประเภทสินค้านี้ ตัวอย่างเช่น การสร้างคลาสสินค้าชื่อ “การจอง”:

class WC_Product_Booking extends WC_Product {
    public function __construct($product) {
        parent::__construct($product);
        $this->product_type = 'booking';
    }
    // 在这里添加自定义方法和属性,如 get_booking_dates()
}
// 将新类注册到工厂
add_filter('woocommerce_product_class', 'register_booking_product_class', 10, 2);
function register_booking_product_class($classname, $product_type) {
    if ($product_type == 'booking') {
        $classname = 'WC_Product_Booking';
    }
    return $classname;
}

WooCommerce REST API ให้อินเทอร์เฟซที่ทรงพลังสำหรับแอปพลิเคชันมือถือหรือระบบจัดการภายนอก คุณสามารถใช้ API เพื่อจัดการข้อมูลเกือบทั้งหมด เช่น ผลิตภัณฑ์ คำสั่งซื้อ ลูกค้า เป็นต้น การเข้าถึง API จำเป็นต้องเปิดใช้งานและสร้างคีย์ API (Consumer Key & Consumer Secret) ก่อนในส่วนหลังบ้านที่ “WooCommerce” > “การตั้งค่า” > “ขั้นสูง” > “API แบบเดิม” จากนั้นจึงสามารถเรียกใช้โดยใช้จุดปลายทางเช่นต่อไปนี้:GET /wp-json/wc/v3/products เพื่อรับรายการผลิตภัณฑ์

พัฒนาเกตเวย์ที่กำหนดเอง

เกตเวย์การชำระเงินที่กำหนดเองคือส่วนขยายของ WC_Payment_Gateway คลาส PHP ของคลาส คุณต้องกำหนด ID, หัวข้อ, คำอธิบาย, ช่องทางการชำระเงินในคลาสนี้ และดำเนินการ process_payment วิธีการเพื่อให้ตรรกะการชำระเงินเสร็จสมบูรณ์ หลังจากพัฒนาเสร็จแล้ว จำเป็นต้องผ่าน woocommerce_payment_gateways ตัวกรองเพื่อเพิ่มลงในรายการเกตเวย์ที่ใช้ได้

การรวม API กับบริการภายนอก

WooCommerce มีการเชื่อมต่อที่หลากหลายเพื่อเชื่อมต่อกับระบบ ERP, CRM หรือระบบโลจิสติกส์ ตัวอย่างเช่น เมื่อสถานะคำสั่งซื้อเปลี่ยนเป็น “เสร็จสิ้น” จะเป็นการกระตุ้น woocommerce_order_status_completed การเชื่อมต่อการกระทำ คุณสามารถเชื่อมต่อฟังก์ชันกับการเชื่อมต่อนี้ เพื่อส่งข้อมูลคำสั่งซื้อไปยังระบบจัดการสินค้าคงคลังของคุณ:

add_action('woocommerce_order_status_completed', 'sync_order_to_erp');
function sync_order_to_erp($order_id) {
    $order = wc_get_order($order_id);
    $data = array(
        'order_id' => $order->get_id(),
        'total'    => $order->get_total(),
        // ... 准备其他数据
    );
    // 使用 wp_remote_post 将 $data 发送到外部 API
}

สรุป

WooCommerce ไม่ใช่แค่ปลั๊กอิน แต่เป็นเฟรมเวิร์กการพัฒนาอีคอมเมิร์ซที่ครบถ้วนและขยายได้สูง ตั้งแต่การติดตั้งและการกำหนดค่าอย่างง่ายไปจนถึงการพัฒนาที่ปรับแต่งได้ลึกซึ้ง มันให้ความเป็นไปได้ที่ไม่มีที่สิ้นสุดสำหรับนักพัฒนาผ่านระบบเทมเพลตที่ชัดเจน การเชื่อมต่อที่หลากหลาย (Actions & Filters) และแบบจำลองข้อมูลเชิงวัตถุ กุญแจสำคัญในการสร้างร้านค้า WooCommerce ที่สำเร็จคือ: การกำหนดค่าพื้นฐานที่มั่นคงเพื่อให้ร้านค้าทำงานได้อย่างมีเสถียรภาพ; ความเข้าใจอย่างลึกซึ้งในแบบจำลองข้อมูลผลิตภัณฑ์และคำสั่งซื้อ; การใช้การแทนที่เทมเพลตและการเชื่อมต่ออย่างเชี่ยวชาญสำหรับการปรับแต่งส่วนหน้า; และการเชี่ยวชาญในการใช้คลาสที่กำหนดเอง, เกตเวย์ และการผสานรวม API เพื่อตอบสนองความต้องการธุรกิจเฉพาะ การปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดเหล่านี้ คุณจะสามารถสร้างร้านค้าออนไลน์ที่ทรงพลัง มีประสิทธิภาพ และสอดคล้องกับตรรกะธุรกิจอย่างสมบูรณ์

คำถามที่พบบ่อย (FAQ)

วิธีการเปลี่ยนข้อความบนปุ่ม “เพิ่มลงในตะกร้าสินค้า”?

คุณสามารถใช้ woocommerce_product_add_to_cart_text ตัวกรองหรือ woocommerce_product_single_add_to_cart_text ตัวกรองเพื่อแก้ไขข้อความปุ่ม ตัวอย่างเช่น รหัสต่อไปนี้จะเปลี่ยนข้อความปุ่มในหน้าสินค้าเดี่ยวเป็น “ซื้อทันที”:

add_filter('woocommerce_product_single_add_to_cart_text', 'change_single_add_to_cart_text');
function change_single_add_to_cart_text() {
    return '立即购买';
}

สำหรับหน้าจัดเก็บ (รายการสินค้า) โปรดใช้ woocommerce_product_add_to_cart_text ตัวกรอง และจำเป็นต้องตรวจสอบประเภทสินค้าภายในฟังก์ชัน

วิธีเพิ่มฟิลด์ที่กำหนดเองสำหรับหมวดหมู่สินค้าเฉพาะ?

คุณต้องใช้ hook การจัดหมวดหมู่ผลิตภัณฑ์ของ WooCommerce ร่วมกับ API ข้อมูลเมตาของคำศัพท์ของ WordPress ก่อนอื่น ใช้ product_cat_add_form_fieldsproduct_cat_edit_form_fields action เพื่อแสดงฟิลด์ในหน้าตั้งค่า/แก้ไขการจัดหมวดหมู่ จากนั้น ใช้ created_termedit_term action เพื่อบันทึกค่าฟิลด์ลงใน term_metaสุดท้าย คุณสามารถใช้ในไฟล์เทมเพลตได้ get_term_meta เพื่อรับและแสดงค่านี้

เหตุใดการแก้ไขเทมเพลตที่กำหนดเองของฉันจึงไม่มีผล?

โปรดตรวจสอบตามขั้นตอนต่อไปนี้: ก่อนอื่น ตรวจสอบให้แน่ใจว่าคุณได้คัดลอกไฟล์เทมเพลตไปยังเส้นทางของธีมที่ถูกต้อง:your-theme/woocommerce/ และโครงสร้างไดเรกทอรีสอดคล้องกับเทมเพลตปลั๊กอินเดิม ต่อมา ล้างแคชทั้งหมด รวมถึงแคชเบราว์เซอร์ แคชอ็อบเจ็กต์ WordPress และแคชฝั่งเซิร์ฟเวอร์ใด ๆ (เช่น OPcache) สุดท้าย ตรวจสอบธีมของคุณ functions.php ประกาศการรองรับ WooCommerce ถูกต้องหรือไม่:add_theme_support('woocommerce');. หากปัญหายังคงอยู่ ให้ลองเปลี่ยนไปใช้ธีมเริ่มต้นชั่วคราว (เช่น Storefront) เพื่อแยกปัญหาความเข้ากันได้ของธีม

วิธีการสร้างผลิตภัณฑ์แบบแปรผันของ WooCommerce แบบโปรแกรมมิ่ง?

คุณจำเป็นต้องใช้ WC_Product_Variable คลาส ขั้นตอนพื้นฐานคือ: สร้างวัตถุสินค้าและตั้งค่าคุณสมบัติพื้นฐาน; สร้างและเพิ่มคุณสมบัติสากล (เช่น สี); สร้างชุดคุณสมบัติเฉพาะสำหรับคุณสมบัติเหล่านี้ (นั่นคือ รูปแบบ); สุดท้ายสร้าง WC_Product_Variation วัตถุแยกสำหรับแต่ละรูปแบบ ตั้งค่าคุณสมบัติเฉพาะเช่นราคา สต็อก และเชื่อมโยงกับสินค้าหลัก นี่เป็นกระบวนการหลายขั้นตอน โดยทั่วไปเกี่ยวข้องกับ wp_set_object_terms, set_attributes, และ save และวิธีการอื่นๆ