私の Wordpress サイトでは、投稿を追加または編集するときにこの問題が発生します。
Notice: register_rest_route was called incorrectly. REST API routes must be registered on the rest_api_init action. Please see Debugging in WordPress for more information. (This message was added in version 5.1.0.) in /project/wp/wp-includes/functions.php on line 5167
注: サイト上で WP アップデートやプラグインのアップデートは行っていません。
この問題を解決するアイデアはありますか?ありがとうございます。
------------------------
WordPress 5.5 では、REST ルートの登録方法が変更され、permission_callback が必要になりました。
この通知が 1 つのサイトに表示され、すべてのサイトに表示されるわけではない理由は、WordPress が DEBUG モードで実行されている場合にのみ通知が表示されるためです。wp-config.php の値をチェックして確認してください。
define( 'WP_DEBUG', true );
通知を表示しているサイトをデバッグ モードにしてはいけない場合は、val を変更するだけです。WP_DEBUG を false に設定します。
1
1
何時間ものデバッグ作業を省いていただき、ありがとうございます...
– M'バク
2021 年 12 月 1 日 17:01
------------------------
プラグインまたはテーマが間違ったフックで REST-Api ルートを作成しています。
これは add_action('rest_api_init', 'function_to_create_end_endpoint'); を使用することで正しく行われます。
作成する関数_エンドポイントには関数 register_rest_route() が含まれています。
あなたの場合、それは他のものです(「rest_api_init」ではなく「init」または「plugins_loaded」)
いくつかの解決策:
すべてのプラグイン/テーマを現在のバージョンに更新します
これで問題が解決しない場合は、プラグインを 1 つずつ非アクティブ化して、問題の原因となっているプラグインを確認し、それを置き換えるか、放棄されているかどうかを確認します。
「register_rest_route」を検索します。 wp-content フォルダー内で、「rest_api_init」以外のフックでそれを呼び出すプラグインを見つけます。
最後に、通知は wp-config で完全なデバッグをオンにした場合にのみ表示されます。これは運用環境で実行されているサイトを対象としたものではありません。オフにすることもできます。