WordPress Multisite คืออะไร ตั้งค่าอย่างไร

บริหารหลายเว็บไซต์จาก Dashboard เดียว ด้วย WordPress Multisite ประหยัดเวลาและทรัพยากร

WordPress Multisite คืออะไร

WordPress Multisite คืออะไร

WordPress Multisite เป็นฟีเจอร์ที่มีมาตั้งแต่ WordPress 3.0 ที่ช่วยให้คุณบริหารหลายเว็บไซต์จาก WordPress installation เดียว โดยมี Super Admin ที่ควบคุมภาพรวมทั้ง network และแต่ละเว็บมี admin ของตัวเองที่จัดการเนื้อหา theme และ user ของตน

ตัวอย่างการใช้งาน WordPress Multisite ได้แก่

Subdomain vs Subdirectory

WordPress Multisite รองรับ 2 รูปแบบ ต้องเลือกตอนติดตั้งและเปลี่ยนภายหลังทำได้ยากมาก

Subdomain (blog.example.com)

แต่ละ site จะอยู่ที่ subdomain เช่น site1.example.com, site2.example.com ต้องตั้งค่า wildcard DNS ให้ *.example.com ชี้มาที่ server เดียวกัน เหมาะสำหรับ site ที่ต้องการ identity แยกชัดเจน

Subdirectory (example.com/site1)

แต่ละ site จะอยู่ที่ path เช่น example.com/site1, example.com/site2 ตั้งค่าง่ายกว่า ไม่ต้องแตะ DNS แต่ path จะยาวขึ้น เหมาะสำหรับ site ภายใต้ brand เดียวกัน

ขั้นตอนเปิดใช้ WordPress Multisite

สำคัญ: ทำ backup ก่อนทุกครั้ง และ Multisite ไม่แนะนำสำหรับเว็บที่ติดตั้ง plugin มาแล้วจำนวนมาก ควรเปิด Multisite ตั้งแต่ต้นก่อนติดตั้ง plugin

ขั้นที่ 1 — แก้ไข wp-config.php

// เพิ่มบรรทัดนี้ก่อน "/* That's all, stop editing! */"
define('WP_ALLOW_MULTISITE', true);

ขั้นที่ 2 — Setup Network

เข้า WordPress Admin แล้วไปที่ Tools > Network Setup จะปรากฏตัวเลือก Subdomain หรือ Subdirectory และ Network Title, Admin Email กรอกข้อมูลแล้วคลิก Install

ขั้นที่ 3 — อัปเดต wp-config.php ตามที่ WordPress แนะนำ

WordPress จะแสดง code ที่ต้องเพิ่มใน wp-config.php โดยตรง คัดลอกและวาง ลักษณะจะเป็นดังนี้

define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false); // true = subdomain, false = subdirectory
define('DOMAIN_CURRENT_SITE', 'yoursite.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

ขั้นที่ 4 — อัปเดต .htaccess

แทนที่ .htaccess เดิมด้วย code ที่ WordPress แนะนำ สำหรับ subdirectory จะเป็น

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# ป้องกัน direct access ไปที่ wp-content/uploads
RewriteRule ^wp-content/[^/]+/.*\.php$ - [F]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ $1 [L]
RewriteRule . index.php [L]

ขั้นที่ 5 — สร้าง Site ใหม่ใน Network

เข้า My Sites > Network Admin > Sites > Add New กรอก Site Address, Site Title, Admin Email แล้วคลิก Add Site จากนั้น admin email ที่กรอกจะได้รับ invitation

ข้อจำกัดของ WordPress Multisite บน Shared Hosting


ตรวจสอบว่า Multisite ทำงานถูกต้อง

# ดูรายการ site ใน Network ผ่าน WP-CLI
wp site list

# ตรวจสอบ URL ของแต่ละ site
wp site list --fields=blog_id,url,registered,last_updated

# เช็คว่า wildcard subdomain ทำงาน
dig *.yoursite.com

# ทดสอบ HTTP response ของ sub-site
curl -I http://site1.yoursite.com
Tip: ใช้ WP-CLI ในการจัดการ Multisite จะสะดวกกว่า UI มาก เช่น wp --url=site1.yoursite.com plugin list เพื่อดู plugin ของ site นั้นๆ

แก้ปัญหาที่พบบ่อย

หลังเปิด Multisite เว็บ Redirect Loop

ตรวจสอบว่า .htaccess ถูกอัปเดตแล้ว และ DOMAIN_CURRENT_SITE ใน wp-config.php ตรงกับ URL จริง บางครั้งต้องล้าง cache browser ด้วย

Sub-site แสดงหน้า 404

ปัญหามักเกิดจาก .htaccess ไม่ถูกต้อง ให้ไป Network Admin > Settings > Permalinks แล้วกด Save เพื่อ regenerate .htaccess rules

Plugin ไม่ปรากฏใน Sub-site

Super Admin ต้อง "Network Activate" plugin ก่อน หรือ activate ให้แต่ละ site ใน Network Admin > Sites > เลือก site > Edit > Plugins

Subdomain ไม่ทำงาน

ตรวจสอบ DNS wildcard record: ต้องมี A record สำหรับ * ชี้ไปที่ IP ของ server และ hosting ต้องรองรับ wildcard subdomain (ติดต่อ support ถ้าไม่แน่ใจ)


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

Multisite กับการติดตั้ง WordPress แยกกันต่างกันอย่างไร

Multisite ใช้ WordPress installation เดียว ใช้ plugin/theme ชุดเดียวร่วมกัน บริหารจาก dashboard เดียว แต่ถ้า site หนึ่งเสียหายอาจกระทบทุก site การติดตั้งแยกกันมี isolation ที่ดีกว่าแต่ดูแลยากกว่า

Multisite มี SEO ผลเสียไหม

ถ้าแต่ละ site มีเนื้อหาไม่ซ้ำกันและ URL ชัดเจน SEO ไม่ได้รับผลเสียจาก Multisite โดยตรง แต่ต้องตั้งค่า canonical และ robots.txt ให้ถูกต้องสำหรับแต่ละ site

ปิด Multisite แล้วกลับเป็น single site ได้ไหม

ทำได้แต่ยุ่งยากมาก เพราะ database structure เปลี่ยนไปแล้ว ต้อง migrate แต่ละ sub-site ออกมาเป็น installation ใหม่ทีละตัว ควรคิดให้รอบคอบก่อนเปิด Multisite

หากต้องการ Hosting ที่รองรับ WordPress Multisite และจัดการหลายเว็บไซต์ได้สะดวก ลองดู บริการ Hosting จาก asiagb.com ที่รองรับ WordPress ครบครันพร้อม support ภาษาไทยตลอด 24 ชั่วโมง