WordPress 判断登录页面

WordPress 默认并没有内置类似is_home()、is_single()判断登录页面的函数,网上搜集成了一些供参考。

if ( $pagenow != \'wp-login.php\' && !is_admin() ) {

}
if ( $GLOBALS[\'pagenow\'] === \'wp-login.php\' ) {
    // We\'re on the login page!
}

先自定义一个函数,把代码添加到主题函数模板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() ){
   ...
}

这个应该适用性更好些。

if(stripos($_SERVER[\"SCRIPT_NAME\"], strrchr(wp_login_url(), \'/\')) !== false){
    /* ... */
}
if ( in_array( $_SERVER[\'PHP_SELF\'], array( \'/wp-login.php\', \'/wp-register.php\' ) ) ){
    // do something.
}
if ( $GLOBALS[\'pagenow\'] === \'wp-login.php\' && ! empty( $_REQUEST[\'action\'] ) && $_REQUEST[\'action\'] === \'register\' ) {
    // We\'re registering
}
function is_login() {
	return in_array( $GLOBALS[\'pagenow\'], array( \'wp-login.php\', \'wp-register.php\' ) );
}
    © 版权声明
    THE END
    喜欢就支持一下吧
    点赞0 分享
    评论 抢沙发

    请登录后发表评论

      暂无评论内容