Я люблю admin-ajax.php. Но я ненавижу локализацию, чтобы указывать на нее сценарии внешнего интерфейса, и мне хотелось бы, чтобы для тем был эквивалентный, легкий для поиска файл. (Меня также беспокоит то, что запросы внешнего интерфейса проходят через «/ wp-admin /». Нет практической причины, просто выглядит ужасно IMO.)
Поэтому я просто скопировал admin-ajax.php в корневой каталог по адресу /ajax.php, отрегулировал пути включения и удалил определение константы WP_ADMIN. Кажется, работает как gangbusters (теперь я могу просто направить все свои запросы AJAX внешнего интерфейса в /ajax.php! И я все еще могу использовать обычные хуки wp_ajax в моих плагинах!).
Но безопасно ли это? Что может пойти не так? Поскольку это не встроено в ядро, я предполагаю, что есть веская причина, почему бы и нет. Но просматривая код, я не вижу никаких непосредственных проблем.
Ты умный - скажи мне, если этот подход сумасшедший. Или, если есть более простой метод, который я пропускаю.