ฉันคิดว่าคำตอบสำหรับคำถามของคุณในตอนนี้คือ "ไม่"
ไม่มีวิธีที่ง่ายในการทริกเกอร์maybe_convert_table_to_utf8mb4
ไซต์เมื่อมีการอัปเกรดเกินกว่า WP 4.3 บนเซิร์ฟเวอร์ที่ไม่ตรงตามข้อกำหนดที่วางไว้ในโพสต์นี้:
https://make.wordpress.org/core/2015/04/02/the-utf8mb4-upgrade/
โปรดสังเกตว่าจากการดูซอร์สโค้ด WP ดูเหมือนว่าพวกเขาย้ายสิ่งนี้จากลำดับการอัพเดต 4.2 เป็น 4.3 (ไม่มีอยู่ใน 4.2 ซึ่งตอนนี้ไม่มีการอัพเกรดเลย) อาจหวังว่าจะมีผู้ใช้เพิ่มขึ้น
นั่นคือคำตอบของคุณและมันแย่ แต่มีความแม่นยำมากกว่าคนอื่น¯_ (ツ) _ / ¯
ขณะนี้เรากำลังดำเนินการสร้างสคริปต์อย่างง่ายที่ช่วยให้คุณสามารถเรียกสาระสำคัญของลำดับการอัปเดตตามเบ็ดการกระทำ หากเราสามารถทำให้มันมั่นคงและทำงานได้เราจะพยายามกลับมาแบ่งปันที่นี่เพื่อให้ผู้อื่นใช้
แผนพื้นฐานของเราคือการแยกส่วน db จริงของupgrade_430()
แยกออกจากระบบการอัพเดทฐานข้อมูลและเรียกมันด้วยตนเอง
แก้ไข: การแก้ปัญหาด้านล่าง
แม้ว่าจะไม่มีวิธีที่ง่ายในการเรียกสคริปต์ แต่นี่เป็นวิธีแก้ปัญหาที่เขียนด้วยมือโดยอ้างอิงจากupgrade_430()
แต่ออกแบบมาเป็นแบบดรอปอิน
https://gist.github.com/carlalexander/4106cfaaf405cec454ba195631bcb6bc
คุณสามารถใส่มันลงในปลั๊กอินหรือเพียงแค่วางลงในฟังก์ชั่นของคุณ ไม่ว่าจะด้วยวิธีใดก็ตามควรเป็นชั่วคราว
มันตั้งค่าให้เรียกโดยอัตโนมัติเมื่อคุณเยี่ยมชม https://yoursite.com/?update-utf8bm4=1
สิ่งนี้ช่วยให้มั่นใจว่าจะทำงานได้เพียงครั้งเดียวและคุณจะได้รับเมื่อ (สำหรับฐานข้อมูลขนาดใหญ่อาจใช้เวลาสักครู่และคุณไม่ต้องการให้ใครแก้ไขโพสต์ในขณะที่เกิดขึ้น)
หากคุณไม่ต้องการให้ทริกเกอร์ GET เพียงแค่เอาadd_action
ส่วนและif (!isset($_GET['update-utf8bm4']))
ส่วนหนึ่งออก
อีกครั้ง: ลบออกเมื่อเสร็จสมบูรณ์คุณไม่ต้องการออกทริกเกอร์ GET แบบนี้โกหก :)
maybe_convert_table_to_utf8mb4
(เช่นเดียวกับการอัปเดต WP) คุณไม่ได้พูดถึงสิ่งนั้นในคำตอบ;)