WordPress 提供的判断当前页面的函数有 is_home()、is_single()、is_category()、is_search()、is_tag()等(不一一列出),基本可以覆盖百分之九十以上的页面,但是却没有提供判断当前页面是否是登录页面的函数,因此就自己写出这么样一个函数。
把下面代码放到当前主题的 functions.php 文件:
section
if ( $pagenow != 'wp-login.php' && !is_admin() ) {
}
section
if ( $GLOBALS['pagenow'] === 'wp-login.php' ) {
// We're on the login page!
}
section
先自定义一个函数,把代码添加到主题函数模板 functions.php 中:
function is_wplogin(){
$ABSPATH_MY = str_replace(array('\\','/'), DIRECTORY_SEPARATOR, ABSPATH);
return ((in_array($ABSPATH_MY.'wp-login.php', get_included_files()) || in_array($ABSPATH_MY.'wp-register.php', get_included_files()) ) || (isset($_GLOBALS['pagenow']) && $GLOBALS['pagenow'] === 'wp-login.php') || $_SERVER['PHP_SELF']== '/wp-login.php');
}
使用方法:
if( is_wplogin() ){
...
}
这个应该适用性更好些。
section
if(stripos($_SERVER["SCRIPT_NAME"], strrchr(wp_login_url(), '/')) !== false){
/* ... */
}
section
if ( in_array( $_SERVER['PHP_SELF'], array( '/wp-login.php', '/wp-register.php' ) ) ){
// do something.
}
section
if ( $GLOBALS['pagenow'] === 'wp-login.php' && ! empty( $_REQUEST['action'] ) && $_REQUEST['action'] === 'register' ) {
// We're registering
}
section
function is_login() {
return in_array( $GLOBALS['pagenow'], array( 'wp-login.php', 'wp-register.php' ) );
}
然后就可以使用 is_login()函数判断当前页面是否是登录页面了。
专业提供WordPress主题安装、深度汉化、加速优化等各类网站建设服务,详询在线客服!