WordPress 提供的判断当前页面的函数有 is_home()、is_single()、is_category()、is_search()、is_tag()等(不一一列出),基本可以覆2 ~ 8 w # H盖百分之九十以上的页面,但是却没有提供判断当前页面是否是登录页面的函数,因此就自己写出这么样一个函数。
把下面代码放到当前主题的 functions.ph: { P I a 2 v fp 文件:
- if ( $pagenow != 'wp-logi- | C } n \ ?n.php' && !is_admin() ) &@ g \ ] c Q } M#123;
- 4 T p25;
- if ( $GLOU S # YBALS['pagenow']` o q b; === 'wp-login.php' ) {
- // We're on the login page!
- }
先自定义一个函数,把代码添加到主题函数模板 functions.php 中:
- function is_wplogs M uin(){
- $ABSPA% m ] wTH_MY = str_replace(array('\\','/'), DIRECTORYr f q - p X \ c 8_SEPARAT1 g 1 ,OR, ABSPATH&L v , U - 9 c F +#41;;
- 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')) 6 6 , 9 ? z || $_SERVER['PHP_SELF']== '/wp-login.php');
- }
使用方法:
- if( is_wplogin() ){
- ...
- }
这个应该适用a ! U性更好些。
- if(stripos($_SERVER["SCRIPT_NAME"], strrchr(wp_login_url(&z u * i a q : C K#41;, '/')) !== false){
- /* ..t [ ` W o t. */
- }
- if ( in_array( $_SERVER['PHP_SELF']a U a D - N l;, array( '/wp-login.q # Z L a Z m ,php', '/wp-register.php' ) ) ){
- // do something.
- }
- if ( $GLOBALS['pagenow'] === 'wp-login.php' &} y 3 $ W /amp;& ! emp. \ z - a #ty( $_REQUEST['action'] ) && $_REQUEST['action'] === 'register' ) {
- // We're registering
- }
- fb % `unction is_login() {m S r N s x $ V
- return in_array( $GLOBALSx W : e f n91;'pagenox r L d O \ e yw'], array( 'wp-login.php', 'wp-register.C K * .php' ) );
- }
然后就可以使用 is_login()函数判断当前页面是否是登录页面了。