今のあなたの質問に対する答えは「いいえ」だと思います。
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には存在しないため、アップグレードはまったく行われていません)。
だからそれはあなたの答えであり、それは吸うが、他よりも正確です¯_(ツ)_ /¯
現在、アクションフックに基づいてアップグレードシーケンスの本質をトリガーできる単純なスクリプトの作成に取り組んでいます。安定して動作するようになったら、戻って他の人が使用できるようにここで共有しようとします。
基本的な計画は、の実際のデータベース部分を抽出し、upgrade_430()
それをデータベース更新システムから分離し、手動でトリガーすることです。
編集:以下のソリューション
スクリプトをトリガーする簡単な方法はありませんが、ここでupgrade_430()
はドロップインとして設計されていますが、手作業でコーディングされた回避策があります。
https://gist.github.com/carlalexander/4106cfaaf405cec454ba195631bcb6bc
これをプラグインに入れるか、functions.phpに貼り付けるだけです。いずれにせよ、一時的なものでなければなりません。
アクセスすると自動的にトリガーされるように設定されています https://yoursite.com/?update-utf8bm4=1
これにより、1回だけ実行され、いつ選択できるかが保証されます(大規模なデータベースの場合は時間がかかる可能性があり、実行中に投稿を誰にも編集させたくない)。
GETトリガーを使用したくない場合は、add_action
パーツとパーツを削除するだけif (!isset($_GET['update-utf8bm4']))
です。
繰り返しますが、完了したらこれを削除します。このようなGETトリガーを残したくありません:)
maybe_convert_table_to_utf8mb4
(WPの更新と同様)?あなたは答えでそれを言及しなかった;)