activate php,wp-activate.php

/**

* Confirms that the activation key that is sent in an email after a user signs

* up for a new site matches the key for that user and then displays confirmation.

*

* @package WordPress

*/

define( 'WP_INSTALLING', true );

/** Sets up the WordPress Environment. */

require( dirname( __FILE__ ) . '/wp-load.php' );

require( dirname( __FILE__ ) . '/wp-blog-header.php' );

if ( ! is_multisite() ) {

wp_redirect( wp_registration_url() );

die();

}

$valid_error_codes = array( 'already_active', 'blog_taken' );

list( $activate_path ) = explode( '?', wp_unslash( $_SERVER['REQUEST_URI'] ) );

$activate_cookie = 'wp-activate-' . COOKIEHASH;

$key = '';

$result = null;

if ( isset( $_GET['key'] ) && isset( $_POST['key'] ) && $_GET['key'] !== $_POST['key'] ) {

wp_die( __( 'A key value mismatch has been detected. Please follow the link provided in your activation email.' ), __( 'An error occurred during the activation' ), 400 );

} elseif ( ! empty( $_GET['key'] ) ) {

$key = $_GET['key'];

} elseif ( ! empty( $_POST['key'] ) ) {

$key = $_POST['key'];

}

if ( $key ) {

$redirect_url = remove_query_arg( 'key' );

if ( $redirect_url !== remove_query_arg( false ) ) {

setcookie( $activate_cookie, $key, 0, $activate_path, COOKIE_DOMAIN, is_ssl(), true );

wp_safe_redirect( $redirect_url );

exit;

} else {

$result = wpmu_activate_signup( $key );

}

}

if ( $result === null && isset( $_COOKIE[ $activate_cookie ] ) ) {

$key = $_COOKIE[ $activate_cookie ];

$result = wpmu_activate_signup( $key );

setcookie( $activate_cookie, ' ', time() - YEAR_IN_SECONDS, $activate_path, COOKIE_DOMAIN, is_ssl(), true );

}

if ( $result === null || ( is_wp_error( $result ) && 'invalid_key' === $result->get_error_code() ) ) {

status_header( 404 );

} elseif ( is_wp_error( $result ) ) {

$error_code = $result->get_error_code();

if ( ! in_array( $error_code, $valid_error_codes ) ) {

status_header( 400 );

}

}

nocache_headers();

if ( is_object( $wp_object_cache ) ) {

$wp_object_cache->cache_enabled = false;

}

// Fix for page title

$wp_query->is_404 = false;

/**

* Fires before the Site Activation page is loaded.

*

* @since 3.0.0

*/

do_action( 'activate_header' );

/**

* Adds an action hook specific to this page.

*

* Fires on {@see 'wp_head'}.

*

* @since MU (3.0.0)

*/

function do_activate_header() {

/**

* Fires before the Site Activation page is loaded.

*

* Fires on the {@see 'wp_head'} action.

*

* @since 3.0.0

*/

do_action( 'activate_wp_head' );

}

add_action( 'wp_head', 'do_activate_header' );

/**

* Loads styles specific to this page.

*

* @since MU (3.0.0)

*/

function wpmu_activate_stylesheet() {

?>

form { margin-top: 2em; }

#submit, #key { width: 90%; font-size: 24px; }

#language { margin-top: .5em; }

.error { background: #f66; }

span.h3 { padding: 0 8px; font-size: 1.3em; font-weight: 600; }

}

add_action( 'wp_head', 'wpmu_activate_stylesheet' );

add_action( 'wp_head', 'wp_sensitive_page_meta' );

get_header( 'wp-activate' );

?>

<?php _e( 'Activation Key Required' ); ?>

} else {

if ( is_wp_error( $result ) && in_array( $result->get_error_code(), $valid_error_codes ) ) {

$signup = $result->get_error_data();

?>

<?php _e( 'Your account is now active!' ); ?>

echo '

';

if ( $signup->domain . $signup->path == '' ) {

printf(

/* translators: 1: Login URL, 2: Username, 3: User email address, 4: Lost password URL. */

__( 'Your account has been activated. You may now log in to the site using your chosen username of “%2$s”. Please check your email inbox at %3$s for your password and login instructions. If you do not receive an email, please check your junk or spam folder. If you still do not receive an email within an hour, you can reset your password.' ),

network_site_url( 'wp-login.php', 'login' ),

$signup->user_login,

$signup->user_email,

wp_lostpassword_url()

);

} else {

printf(

/* translators: 1: Site URL, 2: Username, 3: User email address, 4: Lost password URL. */

__( 'Your site at %1$s is active. You may now log in to your site using your chosen username of “%2$s”. Please check your email inbox at %3$s for your password and login instructions. If you do not receive an email, please check your junk or spam folder. If you still do not receive an email within an hour, you can reset your password.' ),

sprintf( '%1$s', $signup->domain ),

$signup->user_login,

$signup->user_email,

wp_lostpassword_url()

);

}

echo '

';

} elseif ( $result === null || is_wp_error( $result ) ) {

?>

<?php _e( 'An error occurred during the activation' ); ?>

<?php echo $result->get_error_message(); ?>

} else {

$url = isset( $result['blog_id'] ) ? get_home_url( (int) $result['blog_id'] ) : '';

$user = get_userdata( (int) $result['user_id'] );

?>

<?php _e( 'Your account is now active!' ); ?>

<?php _e( 'Username:' ); ?> <?php echo $user->user_login; ?>

if ( $url && $url != network_home_url( '', 'http' ) ) :

switch_to_blog( (int) $result['blog_id'] );

$login_url = wp_login_url();

restore_current_blog();

?>

/* translators: 1: Site URL, 2: Login URL. */

printf( __( 'Your account is now activated. View your site or Log in' ), $url, esc_url( $login_url ) );

?>

/* translators: 1: Login URL, 2: Network home URL. */

printf( __( 'Your account is now activated. Log in or go back to the homepage.' ), network_site_url( 'wp-login.php', 'login' ), network_home_url() );

?>

endif;

}

}

?>

var key_input = document.getElementById('key');

key_input && key_input.focus();

get_footer( 'wp-activate' );

一键复制

编辑

Web IDE

原始数据

按行查看

历史

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值