Menu Adam R Brown

WP hooks navigation: Home/browseActions indexFilters index

Source View: admin_email_check_interval

To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).

Understanding Source Code

The best way to understand what a hook does is to look at where it occurs in the source code.

Remember, this hook may occur in more than one file. Moreover, the hook's context may change from version to version.

Source View

This hook occurs 2 times in this file.

Line Code
599                /**
600                 * Filters the interval for redirecting the user to the admin email confirmation screen.
601                 *
602                 * If `0` (zero) is returned, the user will not be redirected.
603                 *
604                 * @since 5.3.0
605                 *
606                 * @param int $interval Interval time (in seconds). Default is 6 months.
607                 */
608                $admin_email_check_interval = (int) apply_filters( 'admin_email_check_interval', 6 * MONTH_IN_SECONDS );
609
610                if ( $admin_email_check_interval > 0 ) {
611                     update_option( 'admin_email_lifespan', time() + $admin_email_check_interval );
612                }
613
614                wp_safe_redirect( $redirect_to );
615                exit;
616           }
617
 
Line Code
1305                // Check if it is time to add a redirect to the admin email confirmation screen.
1306                if ( is_a( $user, 'WP_User' ) && $user->exists() && $user->has_cap( 'manage_options' ) ) {
1307                     $admin_email_lifespan = (int) get_option( 'admin_email_lifespan' );
1308
1309                     /*
1310                      * If `0` (or anything "falsey" as it is cast to int) is returned, the user will not be redirected
1311                      * to the admin email confirmation screen.
1312                      */
1313                     /** This filter is documented in wp-login.php */
1314                     $admin_email_check_interval = (int) apply_filters( 'admin_email_check_interval', 6 * MONTH_IN_SECONDS );
1315
1316                     if ( $admin_email_check_interval > 0 && time() > $admin_email_lifespan ) {
1317                          $redirect_to = add_query_arg(
1318                               array(
1319                                    'action'  => 'confirm_admin_email',
1320                                    'wp_lang' => get_user_locale( $user ),
1321                               ),
1322                               wp_login_url( $redirect_to )
1323                          );