WooCommerce Shipping คืออะไร ทำไมถึงสำคัญ
WooCommerce Shipping คือระบบการคำนวณและแสดงค่าขนส่งแบบอัตโนมัติบน WordPress ของร้านค้าออนไลน์ สำหรับเจ้าของร้านค้าแบบไทยที่ยังเป็นมือใหม่ หัวข้อนี้มักดูซับซ้อน แต่แท้จริงแล้ว WooCommerce มีสไตล์งานการ์ด drag-and-drop ที่ง่ายมาก ไม่ต้องรู้โค้ด ไม่ต้องสูตรคณิตศาสตร์อะไรปวดหัว แค่ตั้งค่าสองสามที่แล้วจบ
ปัญหาทั่วไปที่คนไม่เข้าใจ Shipping ก็คือ ลูกค้าไม่รู้ว่าจะจ่ายค่าส่งเท่าไหร่ก่อนไปหน้า checkout ส่งผลให้ cart abandonment (ลูกค้าลาออกไปครึ่งกลาง) สูงมาก วิธีแก้คือตั้ง Shipping Calculator ให้ลูกค้าเลือกจังหวัดแล้วรู้ค่าส่งจากเลยเป็นไป ในบทความนี้เราจะสอนตั้งค่า WooCommerce Shipping ให้สมบูรณ์เพื่อร้านค้าไทย พร้อมเชื่อมต่อไปรษณีย์ Kerry Flash และวิธีตั้ง Flat Rate Table Rate Shipping Classes ทั้งหมด
สรุปเร็วๆ: WooCommerce Shipping ประกอบด้วย 4 ส่วน: Shipping Zones (เขตจัดส่ง) - Shipping Methods (วิธีส่ง) - Shipping Classes (ประเภทสินค้า) - Shipping Calculator (ฟอร์มคำนวณ) ตั้งค่าแต่ละส่วนแล้วร้านค้าจะมีระบบขนส่งที่เรียบร้อยและดูเป็นมืออาชีพ
Shipping Zones — แบ่งเขตจัดส่งได้หลายแห่ง
Shipping Zones คือพื้นที่ทาง地理ที่คุณต้องการส่งสินค้า เช่น เขต "ไทย" เขต "เอเชีย" เขต "ทั่วโลก" เป็นต้น แต่ละเขตมีวิธีการส่งและค่าใช้จ่ายที่อาจแตกต่างกัน
สร้าง Shipping Zone ครั้งแรก
- เข้า WooCommerce → Settings → Shipping
- คลิก Add shipping zone
- ตั้งชื่อเขต เช่น "ไทย" "ต่างประเทศ" "ASEAN" เป็นต้น
- ใส่พื้นที่ โดยเลือก "Countries" และ Add ประเทศหรือจังหวัดที่ต้องการ
- กำหนด Shipping Methods ที่ต้องการให้บริการในเขตนี้ (ดูหัวข้อถัดไป)
- คลิก Save
Shipping Zone ที่แนะนำสำหรับร้านค้าไทย
ส่วนใหญ่ร้านค้าไทยทำ 2-3 zone แบบนี้:
- Zone 1: ไทย (กรุงเทพและปริมณฑล) — เลือก "Specific countries" แล้ว select Thailand
- Zone 2: ไทย (จังหวัดอื่น) — เขตเดียวกันแต่ตั้งค่าค่าส่งสูงกว่า
- Zone 3: ต่างประเทศ (ASEAN) — เลือก Laos, Malaysia, Singapore, Vietnam เป็นต้น
- Zone 4: Global — เว้นพื้นที่ว่างหรือ select ทั้งโลก สำหรับส่วนหลัง fallback
Shipping Methods — วิธีการส่งสินค้า
Shipping Methods คือวิธีการส่งจริงๆ เช่น Flat Rate (ตามน้ำหนัก) Free Shipping (ส่งฟรี) Local Pickup (รับเอง) เป็นต้น ใน WooCommerce จะมีบาง method ในตัว คุณสามารถเพิ่ม plugin เพื่อให้มี method เพิ่มเติมได้
Flat Rate — ตั้งค่าส่งตามลักษณะสินค้า
Flat Rate คือสั่งให้คิดค่าส่งตามน้ำหนักหรือจำนวนสินค้า ไม่ใช่ระยะทาง
- คลิก Add Shipping Method ในเขต (zone) ที่เลือก
- เลือก Flat Rate
- ตั้งชื่อ เช่น "ไปรษณีย์ไทย (3-5 วัน)" "Kerry Express (1-2 วัน)" "Flash Express (1 วัน)" เป็นต้น
- ใส่ Shipping Cost เช่น 50 บาท 70 บาท 99 บาท (อาจเป็นจำนวนคงที่ หรืออิงตามเลขแถบ/code มูลค่า)
- ถ้าต้องการ คิดค่าส่งตามหมวดสินค้า ต่ออาจใช้ Shipping Classes (ดูหัวข้อด้านล่าง)
- Save
Free Shipping — ส่งฟรีโดยมีเงื่อนไข
ส่งฟรีสำหรับลูกค้าที่มียอดรวมหรือ coupon พิเศษ
- Add Shipping Method → เลือก Free Shipping
- ตั้งชื่อ "ส่งฟรี (ยอดรวม ≥ 500 บาท)" เป็นต้น
- ใน Free Shipping Requires เลือก:
- Coupon — ลูกค้าต้องใส่ coupon code ในการสั่งซื้อ
- Minimum Order Amount — ส่งฟรีเมื่อยอดรวม ≥ จำนวนที่ตั้ง (เช่น 500 บาท)
- No requirements — ส่งฟรีเสมอสำหรับเขตนี้
- Save
Local Pickup — รับเองที่สำนักงาน
ลูกค้าสามารถรับสินค้าเองแทนการขนส่ง โดยปกติจะเรียกเก็บเงินหรือฟรี
- Add Shipping Method → เลือก Local Pickup
- ตั้งชื่อ "รับเองที่สำนักงาน" และ cost (ปกติ 0 บาท)
- ใส่ข้อมูล pickup location เช่น ที่อยู่สำนักงาน เวลาเปิด-ปิด หมายเลขสาขา เป็นต้น
- ลูกค้าจะเห็นข้อมูลนี้ในเมลการยืนยันการสั่งซื้อและหน้า checkout
คำแนะนำ: ถ้าเป็นร้านค้าที่ส่งใน Thailand เท่านั้น ให้สร้าง Zone "Thailand" ที่มี Flat Rate 3-4 วิธี (ไปรษณีย์/Kerry/Flash/Local Pickup) ไม่ต้องยุ่งกับ Global zone จนกว่าร้านจะโตขึ้น
Shipping Classes — จัดหมวดสินค้าเพื่อให้คิดค่าส่งต่างกัน
Shipping Classes ช่วยแบ่งสินค้าเป็นกลุ่มต่างๆ และคิดค่าส่งตามน้ำหนักหรือลักษณะ เช่น สินค้าเบา (ยา) ส่งฟรี แต่สินค้าหนัก (นม/อาหารสัตว์) คิดค่าส่ง
สร้าง Shipping Class
- ไป WooCommerce → Settings → Shipping → Shipping Classes
- เพิ่มคลาส เช่น "Light" "Heavy" "Refrigerated" เป็นต้น
- ใส่ slug (ชื่ออังกฤษ) เช่น "light" "heavy" "cold"
- Save
กำหนด Shipping Class ให้สินค้า
- แก้ไขสินค้าแต่ละชิ้น
- ไปแท็บ Shipping
- เลือก Shipping Class ที่เหมาะสม
- บันทึก
ใช้ Shipping Class ในการคิดค่าส่ง
หลังกำหนด Class แล้ว แต่ละ Flat Rate Shipping Method สามารถตั้งค่าส่งต่างกันตามคลาส
- ใน Flat Rate method เลือก Calculate based on → Shipping Class
- ตั้งค่าส่งสำหรับแต่ละคลาส เช่น Light = ฟรี, Heavy = 50 บาท เป็นต้น
Table Rate Shipping — ตั้งค่าส่งซับซ้อน (ราคา × น้ำหนัก)
ถ้าการคิดค่าส่งของคุณซับซ้อนมากเช่น "0-1 kg ส่งฟรี, 1-5 kg คิด 50 บาท, > 5 kg คิด 100 บาท" ให้ใช้ plugin Table Rate
ติดตั้ง Plugin
- WooCommerce Shipping - Table Rate (ฟรี) — ใน WooCommerce ตัวเอง (ไม่มี)
- Iconic Shipping (เสียค่า) — https://iconicwp.com/
- ใช้ plugin ใดก็ได้ตราบใดที่รองรับ weight-based และ destination-based rules
ตั้งค่า Table Rate
หลักการเดียวกัน: Add Shipping Method → เลือก Table Rate → ใส่ table ของเงื่อนไข เช่น:
| น้ำหนักต่ำสุด | น้ำหนักสูงสุด | ค่าส่ง |
|---|---|---|
| 0 | 1 | ฟรี |
| 1 | 5 | 50 บาท |
| 5 | 10 | 100 บาท |
| 10 | 999 | 150 บาท |
ไปรษณีย์ไทย Kerry Express Flash Express — เชื่อมต่ออัตโนมัติ
สำหรับร้านค้าขนาดกลาง-ใหญ่ที่อยากให้สินค้าราคาส่งจริงขึ้นอัตโนมัติ WooCommerce มี plugin ที่เชื่อมต่อบริษัทขนส่ง
ตัวเลือก
- Thailand Post API — ส่งหมดถึง ทั่วไทยแล้วต่างประเทศ (แต่ต้อง register API)
- Kerry Express API — ต้องมีบัญชีกับ Kerry
- EasyPost / Shippo — บริการ third-party รวมหลายบริษัท (มีค่าใช้)
- Pragmatic Shipping — plugin ไทยที่เชื่อมต่อหลายบริษัทขนส่ง
สำหรับเริ่มต้น Flat Rate + Shipping Classes ก็เพียงพอแล้ว ค่อยทำ API integration ทีหลัง เมื่อมีการส่งมากขึ้น
Shipping Calculator — ให้ลูกค้ารู้ค่าส่งก่อน checkout
Shipping Calculator คือฟอร์มบน Cart page ที่ลูกค้าใส่ที่อยู่หรือจังหวัด แล้วระบบคำนวณค่าส่งให้เห็นทันที ส่งผลให้ cart abandonment ลดลง
เปิด Shipping Calculator
- WooCommerce → Settings → Shipping
- เลือก Tab Shipping options
- ติ๊ก Enable the shipping calculator on the cart page
- Save
เสร็จแล้ว Cart page ของร้านจะมีฟอร์มให้ลูกค้าเลือกจังหวัด ระบบจะคำนวณค่าส่งตามเขตที่เลือก
การตั้งค่าอื่นๆ ที่สำคัญ
Shipping Zone Priority
ถ้าสร้างหลาย Zone เรียงลำดับโดยการลากเขตไปมา ระบบจะใช้เขต "ที่สัมพัทธ์" แรกที่เจอ
Override ค่าส่งของรายสินค้า
ในแต่ละสินค้า สามารถตั้งค่าส่งแยกได้ เมื่อเลือก Shipping Classes หรือใส่ "Weight" ก็จะคำนวณใหม่
Shipping cost สำหรับสินค้าหลายตัว
ถ้าลูกค้าสั่ง 2 ชิ้น WooCommerce จะ accumulate น้ำหนัก เช่น ถ้า 1 ชิ้น = 500g, 2 ชิ้น = 1 kg แล้วค่าส่งจะเป็น 1 kg tier ไม่ใช่ 0.5 kg × 2
ตัวอย่าง Shipping Configuration สำหรับร้านค้าไทยทั่วไป
Scenario: ร้านค้ายาสัตว์ขนาดเล็ก
- Zone 1: Thailand (All) - Flat Rate "ไปรษณีย์" 50 บาท
- Zone 1: Thailand (All) - Free Shipping เมื่อ ≥ 200 บาท
- Zone 1: Thailand (All) - Local Pickup "รับเองที่สำนักงาน" ฟรี
- Zone 2: International (All) - Flat Rate 300 บาท
Scenario: ร้านสินค้าบางแยก
- Shipping Class: "Light" (≤100g, หลัก) / "Heavy" (>100g, ถ่ายน้ำ)
- Zone 1: Bangkok - Light ฟรี / Heavy 50 บาท
- Zone 2: Thailand - Light 50 บาท / Heavy 100 บาท
- Table Rate for International (weight-based)
คำเตือน: ตั้งค่าแล้วทดสอบเพิ่มสินค้าลงรถเข็นและเลือก Shipping method ให้หลายแบบ เสมอ เพื่อยืนยันว่าแสดงราคาถูกต้อง
การทดสอบ Shipping Settings
วิธีทดสอบ
- เข้า Cart page ของร้านจากหน้าเว็บ
- เพิ่มสินค้าหลายตัว
- ใช้ Shipping Calculator เลือก "Address" แล้วกำหนด Province
- ตรวจว่า Shipping Methods ที่เหมาะสมปรากฏ และค่าส่งถูกต้อง
- ลองเลือก method ต่างๆ ดู
- ลองเพิ่ม coupon Free Shipping มั่นใจ Discount ใช้งานได้
Bug ทั่วไป
- ไม่มี Shipping Methods ปรากฏ — check ว่า Shipping Zone เลือก Country ถูก
- ราคา Shipping ไม่ถูก — ตรวจว่า Weight ของสินค้า บันทึกแล้ว
- Free Shipping ไม่ลด — ตรวจว่า coupon code ใส่ถูก หรือยอดรวม ≥ minimum amount
เริ่มต้นกับ AsiaGB Hosting ใช้ DirectAdmin ง่าย ติดตั้ง WordPress ได้ทันที
WordPress Hosting พร้อม WooCommerce ที่ดีที่สุด ตั้งค่า Shipping ได้ไม่ยุ่ง ด้วย DirectAdmin ง่ายๆ Uptime 99% และ SSD Storage ความเร็วสูง
ดูแผน Hosting