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
592                /**
593                 * Filters the interval for redirecting the user to the admin email confirmation screen.
594                 *
595                 * If `0` (zero) is returned, the user will not be redirected.
596                 *
597                 * @since 5.3.0
598                 *
599                 * @param int $interval Interval time (in seconds). Default is 6 months.
600                 */
601                $admin_email_check_interval = (int) apply_filters( 'admin_email_check_interval', 6 * MONTH_IN_SECONDS );
602
603                if ( $admin_email_check_interval > 0 ) {
604                     update_option( 'admin_email_lifespan', time() + $admin_email_check_interval );
605                }
606
607                wp_safe_redirect( $redirect_to );
608                exit;
609           }
610
 
Line Code
1295                // Check if it is time to add a redirect to the admin email confirmation screen.
1296                if ( is_a( $user, 'WP_User' ) && $user->exists() && $user->has_cap( 'manage_options' ) ) {
1297                     $admin_email_lifespan = (int) get_option( 'admin_email_lifespan' );
1298
1299                     /*
1300                      * If `0` (or anything "falsey" as it is cast to int) is returned, the user will not be redirected
1301                      * to the admin email confirmation screen.
1302                      */
1303                     /** This filter is documented in wp-login.php */
1304                     $admin_email_check_interval = (int) apply_filters( 'admin_email_check_interval', 6 * MONTH_IN_SECONDS );
1305
1306                     if ( $admin_email_check_interval > 0 && time() > $admin_email_lifespan ) {
1307                          $redirect_to = add_query_arg(
1308                               array(
1309                                    'action'  => 'confirm_admin_email',
1310                                    'wp_lang' => get_user_locale( $user ),
1311                               ),
1312                               wp_login_url( $redirect_to )
1313                          );