ความเข้ากันได้ของ Multisite มีสองประเภท:
- การทำงานร่วมกันได้แบบพาสซีฟ: ไม่ต้องทำอะไรโดยเฉพาะเจาะจงไซต์ทำงานได้โดยไม่ทำลายอะไรเลย
- ความเข้ากันได้ใช้งานล่าสุด: การเปลี่ยนแปลงหรือการขยายพฤติกรรมที่เฉพาะเจาะจงหลายไซต์
ฉันเดาว่าคุณไม่อยู่ที่ 1. ดูสไลด์ของฉันจาก WordCamp Prague 2015สำหรับส่วนที่สอง
ไม่ควรเปิดใช้งานปลั๊กอินที่ไม่พูดอะไรเกี่ยวกับเว็บไซต์หลายรายการในฐานะปลั๊กอินเครือข่าย ตัวอย่างเช่น WooCommerce สร้างตารางที่กำหนดเองบางส่วนในระหว่างการติดตั้ง หากคุณเปิดใช้งานทั้งเครือข่ายไซต์ย่อยจะไม่ได้รับตารางเหล่านี้และท้องฟ้าจะตกลงบนหัวของคุณ
น่าเสียดายที่ปลั๊กอินส่วนใหญ่ไม่ได้ตรวจสอบประเภทการเปิดใช้งานดังนั้นจึงทำให้คุณเปิดใช้งานไม่ถูกต้อง
ที่เกี่ยวข้องคือปัญหา UX เช่นตัวชี้ของผู้ดูแลระบบหรือหน้า "เกี่ยวกับ" พิเศษที่คุณต้องคลิกไปที่ไซต์ย่อยที่เคยอยู่ในปลั๊กอินที่เข้ากันไม่ได้ Yoast ของ WP SEO เป็นตัวอย่างหนึ่ง นี้จะได้รับการแก้ไขในปลั๊กอินนั้นเร็ว ๆ นี้ฉันเดา :)
ปัญหาอื่น ๆ ขึ้นอยู่กับสิ่งที่คุณทำกับเว็บไซต์หลายไซต์นั้น หากคุณกำลังสร้างเว็บไซต์หลายภาษาซึ่งแต่ละเว็บไซต์เขียนด้วยภาษาเดียวและไซต์นั้นเชื่อมต่อกันคุณต้องการซิงโครไนซ์โพสต์เมื่อคุณเขียนเนื้อหา นั่นหมายความว่าคุณโทรswitch_to_blog()
เข้าตะขอsave_post
และบันทึกโพสต์ที่เชื่อมต่อด้วย save_post
จะถูกเรียกหลายครั้งระหว่างการร้องขอครั้งเดียว ปลั๊กอินจำนวนมากไม่ทราบถึงสถานการณ์ดังกล่าวดังนั้นพวกเขาจึงเขียนทับข้อมูลโพสต์เมตาสำหรับโพสต์ที่เชื่อมต่อโดยคิดว่าพวกเขายังอยู่ในโพสต์แรก
มองหาปลั๊กอินที่จัดการกับโพสต์เมตาและตรวจสอบดังนี้:
if ( is_multisite() && ms_is_switched() )
return FALSE;
ปลั๊กอินเหล่านี้เข้ากันไม่ได้
ที่คล้ายกันถึงแม้ว่าจะระบุได้ยาก แต่ปัญหาก็คือเมื่อปลั๊กอินสัมผัสกับเขตข้อมูลเมตาของผู้ใช้หรือกฎการเขียนซ้ำ
ปลั๊กอินบางตัวลองเขียนเนื้อหาลงในไฟล์โดยไม่รวมรหัสไซต์ในชื่อไฟล์ พวกเขาก็มีแนวโน้มที่จะแตกหักเช่นกัน
เช่นเดียวกับทอมกล่าวว่า: สร้างการติดตั้งทดสอบรันทุกกรณีการใช้งานที่คุณสามารถจินตนาการได้ คุณไม่สามารถเชื่อถือหน้าปลั๊กอินและมักจะมีข้อมูลไม่เพียงพอ