Skip to main content

WordPress Multisite คืออะไร?

WordPress มีฟีเจอร์ในตัวที่เรียกว่า 'Multisite' ซึ่งเริ่มต้นมาตั้งแต่ปี 2010 พร้อมกับการเปิดตัว WordPress 3.0 ตั้งแต่นั้นมาก็มีการปรับปรุงหลายครั้งเพื่อเพิ่มฟีเจอร์ใหม่ๆ และเสริมความปลอดภัย

พูดง่ายๆ WordPress multisite ก็คือแบบนี้: มหาวิทยาลัยแห่งหนึ่งติดตั้ง WordPress เพียงครั้งเดียว แต่แต่ละคณะสามารถมีเว็บไซต์ WordPress ของตัวเองได้

WordPress Multisite คืออะไรกันแน่?

Multisite คือฟีเจอร์ของ WordPress ที่ช่วยให้หลายเว็บไซต์ใช้ WordPress ติดตั้งเดียวร่วมกันได้ เมื่อเปิดใช้งาน multisite เว็บไซต์ WordPress เดิมจะถูกแปลงให้รองรับสิ่งที่มักเรียกกันว่า เครือข่ายของเว็บไซต์ (network of sites)

เครือข่ายนี้ใช้ระบบไฟล์ร่วมกัน (หมายความว่า plugin และ theme ก็ใช้ร่วมกันด้วย) รวมถึงฐานข้อมูล ไฟล์หลักของ WordPress และ wp-config.php เป็นต้น

นั่นหมายความว่าการอัปเดต WordPress, theme และ plugin ต้องทำเพียงครั้งเดียวสำหรับทุกเว็บไซต์ในเครือข่าย เพราะใช้ไฟล์เดียวกันบนระบบไฟล์

ข้อดีนี้เป็นหนึ่งในข้อได้เปรียบหลักของ multisite เพราะช่วยให้คุณเพิ่มจำนวนเว็บไซต์ที่ดูแลได้มากขึ้น โดยที่งานบำรุงรักษาสำหรับลูกค้าของคุณยังคงเท่าเดิม

Subdomain หรือ Subdirectory?

มีสองโหมดในการใช้งาน WordPress multisite – และคุณต้องเลือกโหมดใดโหมดหนึ่งเมื่อแปลง WordPress ปกติเป็น multisite:

Subdomain: เช่น site.domain.com

…หรือ

Subdirectory: เช่น yourdomain.com/site

แต่ละโหมดมีข้อดีและข้อเสียที่คุณต้องพิจารณาก่อนตัดสินใจ

มีสิ่งสำคัญที่ต้องทราบ: เมื่อตัดสินใจแล้ว การเปลี่ยนเครือข่ายจาก subdirectory เป็น subdomain หรือกลับกันนั้นยากมาก – โดยเฉพาะถ้าคุณมีเว็บไซต์สร้างไว้แล้วหลายเว็บ

ก่อนตัดสินใจ ลองพิจารณาประเด็นเหล่านี้:

โหมด Subdirectory เป็นโหมดที่ง่ายที่สุดในแง่ของการติดตั้งและดูแลรักษา เพราะทุกเว็บไซต์เป็นเพียงพาธที่ต่อท้ายโดเมนหลัก (เช่น yourdomain.com/subsite) ดังนั้นคุณต้องการ SSL certificate เพียงใบเดียว สำหรับโดเมนหลัก และจะครอบคลุมทั้งเครือข่าย

ในขณะเดียวกัน เนื่องจากโครงสร้าง URL Google และ search engine ส่วนใหญ่จะมองว่าทุก subsite ในเครือข่ายแบบ subdirectory เป็นเว็บไซต์ขนาดใหญ่เว็บเดียว ผลก็คือเนื้อหาที่ลูกค้าของคุณเพิ่มใน subsite อาจส่งผลต่อประสิทธิภาพ SEO ของหน้า landing ของคุณ ระดับผลกระทบยังเป็นที่ถกเถียงกันอยู่ และมีข้อโต้แย้งว่าการจัดแบบนี้อาจเป็นผลดีต่อ SEO ด้วยซ้ำ

โหมด Subdomain ติดตั้งซับซ้อนกว่าเล็กน้อย แต่โครงสร้าง URL (เช่น subsite.yournetwork.com) โดยทั่วไปถูกมองว่า "ดูเป็นมืออาชีพมากกว่า"

หนึ่งในความท้าทายหลักของการติดตั้งโหมด subdomain คือการครอบคลุม SSL (HTTPS) สำหรับทั้งเครือข่าย เหตุผลก็คือเบราว์เซอร์มอง subdomain แต่ละตัวเป็นหน่วยแยกต่างหาก ดังนั้นคุณต้องมี SSL certificate คนละใบสำหรับแต่ละ subdomain ในเครือข่าย หรือใช้ certificate ชนิดพิเศษที่เรียกว่า Wildcard SSL certificate ในช่วงไม่กี่ปีที่ผ่านมา ผู้ให้บริการ hosting และ control panel ต่างๆ พัฒนาการจัดการ SSL ขึ้นมาก บางรายเสนอ wildcard certificate เพียงคลิกปุ่มเดียว ทำให้ความซับซ้อนในการติดตั้งของทั้งสองโหมดใกล้เคียงกันมากขึ้น

ต่างจากโหมด subdirectory ตรงที่ subsite ในเครือข่ายแบบ subdomain จะถูก search engine มองว่าเป็นเว็บไซต์แยกกัน ซึ่งหมายความว่าเนื้อหาใน subsite หนึ่งจะไม่กระทบประสิทธิภาพ SEO ของ subsite อื่นเลย

Super Admin

WordPress แบบเว็บเดียวให้คุณเพิ่มผู้ใช้ได้ไม่จำกัด และกำหนดบทบาทต่างๆ พร้อมสิทธิ์ที่แตกต่างกันให้ผู้ใช้เหล่านั้น

ใน WordPress Multisite จะมีผู้ใช้ประเภทใหม่ปลดล็อกขึ้นมา: super admin – และแผงควบคุมใหม่ก็ถูกปลดล็อกด้วย: network admin panel

ตามชื่อเลย super admin มีพลังพิเศษเหนือเครือข่าย สามารถจัดการ subsite, plugin, theme ทุกอย่างได้หมด!

เมื่อคุณแปลง WordPress แบบเว็บเดียวเป็น multisite ผู้ดูแลระบบเดิมของเว็บนั้นจะถูกอัปเกรดเป็น super admin โดยอัตโนมัติ

Plugin และ theme สามารถติดตั้งหรือถอนการติดตั้งได้จาก network admin panel โดย super admin เท่านั้น ผู้ดูแล subsite สามารถเลือกเปิดหรือปิดใช้งาน plugin หรือ theme เหล่านั้นได้ เว้นแต่ว่า super admin จะ network activate plugin ไว้ ซึ่งจะบังคับให้ plugin นั้นทำงานสำหรับทุก subsite ตลอดเวลา

หมายเหตุ: อย่างที่เห็น การเชิญใครสักคนเข้ามาในเครือข่ายและให้สิทธิ์ super admin จะทำให้ผู้ใช้คนนั้นควบคุมเครือข่ายได้ทั้งหมด ตัวอย่างเช่น super admin คนอื่นสามารถลบสถานะ super admin ของคุณได้ ทำให้คุณถูกล็อกออกจาก network admin panel ของตัวเอง เพื่อให้ลูกค้า Ultimate Multisite ควบคุมได้อย่างละเอียดว่า super admin เพิ่มเติมทำอะไรได้บ้าง เรามี add-on ที่ชื่อว่า Support Agents add-on นี้ช่วยให้คุณสร้างผู้ใช้อีกประเภท – agent – ที่มีเฉพาะสิทธิ์ที่จำเป็นสำหรับงานของพวกเขาในเครือข่ายเท่านั้น

สิ่งที่ใช้ร่วมกันระหว่าง subsite และสิ่งที่ไม่ใช้ร่วมกัน

อย่างที่กล่าวไปก่อนหน้า ข้อดีหลักอย่างหนึ่งของ WordPress multisite คือทุก subsite ใช้การตั้งค่า ไฟล์หลัก theme, plugin และไฟล์หลักของ WordPress ร่วมกัน

อย่างไรก็ตาม มีองค์ประกอบบางอย่างที่แยกขอบเขตอย่างดีสำหรับแต่ละ subsite

- ตัวอย่างเช่น แต่ละ subsite มีโฟลเดอร์ uploads ของตัวเอง ดังนั้นไฟล์ที่อัปโหลดโดยผู้ใช้ของ subsite หนึ่งจะไม่สามารถเข้าถึงได้จาก subsite อื่น

- แต่ละ subsite มีแผงควบคุมของตัวเอง และสามารถเปิดหรือปิดใช้งาน plugin หรือ theme ได้ เว้นแต่ว่า super admin จะ network activate ไว้

- ตารางฐานข้อมูลส่วนใหญ่ถูกสร้างขึ้นสำหรับแต่ละ subsite ซึ่งหมายความว่าโพสต์ ความคิดเห็น หน้า การตั้งค่า และอื่นๆ จะแยกขอบเขตสำหรับแต่ละ subsite

การจัดการผู้ใช้บน WordPress Multisite

เรื่องละเอียดอ่อนอย่างหนึ่งบน WordPress multisite คือการจัดการผู้ใช้ ตาราง user ของ WordPress เป็นหนึ่งในไม่กี่ตารางที่ใช้ร่วมกันระหว่างทุก subsite

การจัดแบบนี้อาจสร้างปัญหาได้ขึ้นอยู่กับสิ่งที่คุณวางแผนจะสร้างด้วยเครือข่ายของคุณ ตัวอย่างด้านล่างช่วยอธิบายปัญหาที่เร่งด่วนที่สุด

ลองนึกภาพสถานการณ์นี้:

คุณสร้างเครือข่าย WordPress multisite และเริ่มเสนอ subsite รายเดือนให้กับคนที่ต้องการมีร้านค้าออนไลน์

คุณได้ลูกค้าที่จ่ายเงินคนแรก – จอห์น คุณสร้างเว็บไซต์สำหรับจอห์นบนเครือข่าย ติดตั้ง plugin ที่จำเป็นทั้งหมด แล้วสร้างผู้ใช้สำหรับจอห์นเพื่อให้เขาจัดการร้านค้าได้

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

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

วันหนึ่ง จอห์นต้องการซื้อรองเท้าคู่ใหม่และเจอคู่ที่สมบูรณ์แบบในร้านของอลิซ เมื่อเขาพยายามทำการซื้อให้เสร็จ เขาได้รับข้อความผิดพลาด "email already in use" ซึ่งแปลกมากเพราะจอห์นมั่นใจ 100% ว่านี่เป็นครั้งแรกที่เขาเข้าเว็บไซต์ของอลิซ

สิ่งที่เกิดขึ้นคือผู้ใช้ของจอห์นถูกแชร์ข้ามทั้งเครือข่าย ดังนั้นเมื่อเขาพยายามสร้างบัญชีเพื่อ checkout บนเว็บของอลิซ WordPress จะตรวจพบว่ามีผู้ใช้ที่ใช้อีเมลเดียวกันอยู่แล้วและแสดงข้อผิดพลาด

หมายเหตุ: เราเข้าใจว่าเรื่องนี้อาจเป็นปัญหาใหญ่ขึ้นอยู่กับกรณีใช้งานของคุณ ดังนั้น Ultimate Multisite จึงมีตัวเลือกที่ข้ามการตรวจสอบผู้ใช้ที่มีอยู่แล้วตามปกติ ทำให้สามารถสร้างหลายบัญชีด้วยอีเมลเดียวกันได้ แต่ละบัญชีผูกกับ subsite หนึ่ง ทำให้ความเสี่ยงที่จะชนกันน้อยมาก ในตัวอย่างข้างต้น จอห์นจะไม่ได้รับข้อความผิดพลาดและสามารถซื้อรองเท้าได้โดยไม่มีปัญหา ตัวเลือกนี้เรียกว่า Enable Multiple Accounts และสามารถเปิดใช้งานได้ที่ Ultimate Multisite → Settings → Login & Registration

แม้ว่าตาราง user จะใช้ร่วมกัน แต่ผู้ใช้สามารถถูกเพิ่มหรือลบออกจาก subsite ได้โดยผู้ดูแล subsite หรือ super admin และพวกเขายังสามารถมีบทบาทที่แตกต่างกันบน subsite ที่แตกต่างกันได้

ข้อควรพิจารณาด้านประสิทธิภาพ

WordPress multisite ทรงพลังมากในแง่ของจำนวนเว็บไซต์ที่รองรับได้ ซึ่งพิสูจน์ได้จากการที่ WordPress.com, Edublogs และ Campuspress ล้วนเป็นบริการที่ใช้ multisite และแต่ละแห่งโฮสต์เว็บไซต์หลายพันเว็บ

แม้ในทางทฤษฎีจะไม่มีจำนวนสูงสุดของเว็บไซต์ที่คุณโฮสต์บน WordPress multisite ติดตั้งเดียวได้ แต่ในทางปฏิบัติจำนวนเว็บไซต์ที่คุณรันได้อย่างน่าพอใจอาจแตกต่างกันมากขึ้นอยู่กับหลายปัจจัย: เว็บไซต์มีความ dynamic แค่ไหน มี plugin อะไรให้ subsite ใช้บ้าง เป็นต้น

โดยหลักการทั่วไป ยิ่งเครือข่ายของคุณเรียบง่ายเท่าไหร่ยิ่งดี การเน้นเว็บไซต์ที่เนื้อหาไม่ค่อย dynamic (ซึ่งเหมาะกับกลยุทธ์ caching แบบเข้มข้น) และรักษา stack ของ plugin ให้เบาที่สุดเท่าที่จะเป็นไปได้ (ยิ่งมี plugin ที่ใช้งานอยู่น้อยยิ่งดี) สามารถเพิ่มจำนวน subsite ที่คุณโฮสต์ได้อย่างมาก

ส่วนที่ดีที่สุดคือเนื่องจากทุกอย่างเป็น WordPress เครื่องมือที่คุณรู้จักและชื่นชอบอยู่แล้วสำหรับการปรับปรุงประสิทธิภาพก็จะใช้ได้กับเครือข่าย multisite ด้วย

คอขวดหลักสำหรับ multisite คือฐานข้อมูล แต่ถ้าทุกอย่างอื่นตั้งค่าถูกต้อง คุณอาจมีได้หลายพันเว็บไซต์ก่อนที่จะต้องกังวลเรื่องนี้ แม้ถึงตอนนั้น ก็ยังมีโซลูชันที่สามารถเพิ่มได้ตามลำดับ (เช่น database sharding เป็นต้น)