Me he dado cuenta de que algunos complementos como Contact-form-7 , Nextgen-gallery , posiblemente otros, tienen una característica interesante de no registrar sus códigos cortos cuando is_admin()
es cierto.
Lo problemático es que, si desea generar algún contenido dinámico (que puede tener código corto) a partir de ajax, y usar la forma wp "correcta" de hacerlo, admin-ajax.php, es imposible que WP_ADMIN sea verdadero. Vea las primeras líneas de admin-ajax.php:
define( 'DOING_AJAX', true );
if ( ! defined( 'WP_ADMIN' ) ) {
define( 'WP_ADMIN', true );
}
Ahora, parece que hay extensiones de PHP que le permitirán desarmar una constante definida (hacky), o puede haber una manera de meterse con el sistema WP_Screen indocumentado y $GLOBALS['current_screen']
hacer que la is_admin()
función devuelva falso. La solución más útil parece estar publicando en la página o en la raíz del sitio.
¿Es común que los complementos registren sus códigos cortos cuando is_admin()
es falso? Si es así, no podría encontrar ninguna documentación o razón para ello, aparte de que puede ser una optimización prematura.
is_admin
está haciendo_it_wrong, hay formas mucho mejores en WP de verificar las solicitudes de ajax. Finalmente, si el complemento pone en cola js / css, si lo hace bien (mediante la'wp_enqueue_scripts'
acción) no afectará a las páginas de administración porque ese enlace no se activa en las páginas de administración.