admin-ajax.phpが大好きです。しかし、フロントエンドスクリプトを指すためにローカライズする必要はありません。テーマに対応する、見つけやすいファイルがあればいいのにと思います。(また、フロントエンドのリクエストが "/ wp-admin /"を通過するのを見るのも面倒です。実用的な理由はなく、,いIMOに見えます。)
そのため、単にadmin-ajax.phpを「/ajax.php」のルートディレクトリにコピーし、インクルードパスを調整し、WP_ADMIN定数の定義を削除しました。ギャングバスターのように動作しているようです(すべてのフロントエンドAJAXリクエストを/ajax.phpに直接送ることができます!そして、プラグインで通常のwp_ajaxフックを使用できます!)。
しかし、これは安全ですか?何がおかしいのでしょうか?これはコアに組み込まれていないので、なぜそうならないのかについて十分な理由があると思います。しかし、コードを見てみると、差し迫った問題は見当たりません。
あなたは賢いです。このアプローチがおかしいなら教えてください。または、私が見落としているより簡単な方法がある場合。