Me encanta admin-ajax.php. Pero odio tener que localizar para apuntar guiones frontend a él, y desearía que hubiera un archivo equivalente y fácil de encontrar para los temas. (También me molesta ver que las solicitudes frontend pasan por "/ wp-admin /". No hay razón práctica, solo se ve feo en mi opinión).
Así que simplemente copié admin-ajax.php en el directorio raíz en "/ajax.php", ajusté las rutas de inclusión y eliminé la definición constante WP_ADMIN. Parece funcionar como gangbusters (¡ahora puedo dirigir todas mis solicitudes de AJAX frontend a /ajax.php! ¡Y aún puedo usar los ganchos wp_ajax normales en mis complementos!).
¿Pero es esto seguro? ¿Qué podría salir mal? Como esto no está integrado en el núcleo, supongo que hay una buena razón para no hacerlo. Pero mirando a través del código, no puedo ver ningún problema inmediato.
Eres inteligente, dime si este enfoque es una locura. O si hay un método más simple que estoy pasando por alto.