เป็นที่ยอมรับกันโดยทั่วไปว่านักพัฒนาควรทดสอบการอัปเดตผ่านไซต์ staging ก่อนปล่อยไปยังเซิร์ฟเวอร์ live อย่างไรก็ตามเมื่อการปรับปรุงการพัฒนาต้องการการแก้ไขใน Wordpress DB สิ่งต่าง ๆ มีความซับซ้อนเนื่องจากผู้ใช้ในไซต์สดจะอัพเดต DB ด้วย
การไหล (งง) เพียงอย่างเดียวที่ฉันสามารถจินตนาการได้มีดังต่อไปนี้:
- ทดสอบบนโลคัลเซิร์ฟเวอร์ (WAMP, XAMP ฯลฯ )
- เมื่อพร้อมที่จะปรับใช้ให้ตั้งค่าไซต์สดในโหมดการบำรุงรักษา
- สำรองไซต์สด (ทำสำเนา sqldump ฯลฯ )
- สร้างโคลนของไซต์สดที่ถูกล็อคไปยังไซต์การแสดงละคร
- อัปโหลดการแก้ไขจากสภาพแวดล้อมท้องถิ่นไปยังไซต์การแสดงละคร
- ทดสอบไซต์จัดเตรียม
- ผลักดันไซต์การแสดงละครสด
- ลบโหมดการบำรุงรักษา
ข้อเสียของการไหลข้างต้น:
- ช่วงเวลาหยุดทำงานอาจนานกว่าที่คาดไว้สำหรับผู้ใช้ในขณะที่นักพัฒนากำลังทดสอบอัปเดตอย่างระมัดระวังในไซต์ทดสอบ
- อาจต้องการการจัดการการปรับเปลี่ยนแบบแมนนวล: ตัวอย่างเช่นเลย์เอาต์ของตัวสร้างเพจของผู้สร้างไซต์จะถูกเก็บไว้ในฐานข้อมูลดังนั้นเมื่อมีการแก้ไขเลย์เอาต์นั้นจะต้องอิมพอร์ตด้วยตนเองในไซต์ลำดับขั้น ในกรณีนี้มันอาจจะเพียงพอที่จะเพียงแค่วางและนำเข้าหน้าลงในเว็บไซต์การแสดงละครและหากทำงานให้นำเข้าพวกเขาในเว็บไซต์สด
ฉันสงสัยว่าจะมีวิธีที่ดีกว่าและอัตโนมัติกว่านี้เพื่อให้บรรลุหรือไม่
คุณคิดอย่างไร?
EDIT ได้รับการเสนอการแก้ไขตามที่ร้องขอในอดีต แต่ไม่มีผู้ใดเสนอวิธีการแก้ไขที่ชัดเจน:
- 9/2010 - การประสานฐานข้อมูลระหว่าง dev / การ staging และการผลิต
- 12/2011 - การปรับใช้ปลั๊กอินที่อัปเดตหรือใหม่ที่ปรับเปลี่ยนตาราง wp_options
- 9/2014 - วิธีอัปโหลดการเปลี่ยนแปลงในเครื่องไปยังเซิร์ฟเวอร์ที่ใช้งานจริงโดยไม่ต้องแทนที่โพสต์ / หน้าใหม่
- 1/2015 - วิธีการบำรุงรักษาบล็อกเว็บไซต์ WordPress ในการผลิตและการแสดงละคร?