php - plugin - Wordpress-cómo detectar si la página actual es la página de inicio de sesión
vale la pena aprender wordpress (4)
Hay una forma mejor que usar la variable global $pagenow
para detectar la página actual si es la página de inicio de sesión, como un is_admin()
?
if ($pagenow != ''wp-login.php'' && !is_admin())
{
// Do something
}
Hay una variable global $current_screen
con un getter get_current_screen()
(que se declaró en /wp-admin/includes/template.php
), pero siempre es igual a NULL
En # 15686 (Detectar la etiqueta de la plantilla de la página actual) - WordPress Trac se dice que generalmente se usa $pagenow
, pero creo que no es la buena manera de comparar páginas no dinámicas con el nombre del archivo en lugar de la función (como la página de administración)
¿No puedes explicar qué vas a hacer con eso? Así que puedo decir si debe codificar usando ganchos de wordpress.
o puede usar el uri absoluto, solo haga coincidir con wp-login.php
<?php
$uri = $_SERVER[''REQUEST_URI''];
echo $uri;
?>
En caso de que quiera ser lo más independiente posible de WP; por ejemplo, en un complemento que mantiene los cambios futuros fuera del alcance. Puedes usar algo como esto:
function is_login_page() {
return !strncmp($_SERVER[''REQUEST_URI''], ''/wp-login.php'', strlen(''/wp-login.php''));
}
Si bien tiendo a estar de acuerdo con los demás en la necesidad de una función is_login_page () o algo similar, encontré la que parece ser la mejor respuesta en https://wordpress.stackexchange.com/questions/12863/check-if-were-on-the-wp-login-page , que usé para hacer lo siguiente:
<?php
function is_login_page() {
return in_array($GLOBALS[''pagenow''], array(''wp-login.php'', ''wp-register.php''));
}
Si eres como yo, y realmente intentaste cancelar el registro / desordenar con jQuery que WordPress carga automáticamente, entonces la respuesta correcta es:
No use wp_print_styles
para registrar sus scripts, ¡use wp_enqueue_scripts en wp_enqueue_scripts lugar!
Este enlace solo se ejecutará en la interfaz, no en la página de inicio de sesión, por lo que no hay necesidad de soluciones alternativas.
Nacin lo explica aquí: http://make.wordpress.org/core/2011/12/12/use-wp_enqueue_scripts-not-wp_print_styles-to-enqueue-scripts-and-styles-for-the-frontend/