wp_install
函数
wp_install ( $blog_title, $user_name, $user_email, $is_public, $deprecated = '', $user_password = '', $language = '' )
- 参数
-
-
(string)
$blog_title
Site title.- Required: 是
-
(string)
$user_name
User’s username.- Required: 是
-
(string)
$user_email
User’s email.- Required: 是
-
(bool)
$is_public
Whether the site is public.- Required: 是
-
(string)
$deprecated
Optional. Not used.- Required: 否
- Default: (empty)
-
(string)
$user_password
Optional. User’s chosen password. Default empty (random password).- Required: 否
- Default: (empty)
-
(string)
$language
Optional. Language chosen. Default empty.- Required: 否
- Default: (empty)
-
(string)
- 返回值
-
- (array) { Data for the newly installed site. @type string $url The URL of the site. @type int $user_id The ID of the site owner. @type string $password The password of the site owner, if their user account didn’t already exist. @type string $password_message The explanatory message regarding the password. }
- 定义位置
-
-
wp-admin/includes/upgrade.php
, line 47
-
wp-admin/includes/upgrade.php
- 引入
- 2.1.0
- 弃用
- –
Installs the site.
Runs the required functions to set up and populate the database,
including primary admin user and initial options.
function wp_install( $blog_title, $user_name, $user_email, $is_public, $deprecated = '', $user_password = '', $language = '' ) {
if ( ! empty( $deprecated ) ) {
_deprecated_argument( __FUNCTION__, '2.6.0' );
}
wp_check_mysql_version();
wp_cache_flush();
make_db_current_silent();
populate_options();
populate_roles();
update_option( 'blogname', $blog_title );
update_option( 'admin_email', $user_email );
update_option( 'blog_public', $is_public );
// Freshness of site - in the future, this could get more specific about actions taken, perhaps.
update_option( 'fresh_site', 1 );
if ( $language ) {
update_option( 'WPLANG', $language );
}
$guessurl = wp_guess_url();
update_option( 'siteurl', $guessurl );
// If not a public site, don't ping.
if ( ! $is_public ) {
update_option( 'default_pingback_flag', 0 );
}
/*
* Create default user. If the user already exists, the user tables are
* being shared among sites. Just set the role in that case.
*/
$user_id = username_exists( $user_name );
$user_password = trim( $user_password );
$email_password = false;
$user_created = false;
if ( ! $user_id && empty( $user_password ) ) {
$user_password = wp_generate_password( 12, false );
$message = __( 'Note that password carefully! It is a random password that was generated just for you.' );
$user_id = wp_create_user( $user_name, $user_password, $user_email );
update_user_meta( $user_id, 'default_password_nag', true );
$email_password = true;
$user_created = true;
} elseif ( ! $user_id ) {
// Password has been provided.
$message = '' . __( 'Your chosen password.' ) . '';
$user_id = wp_create_user( $user_name, $user_password, $user_email );
$user_created = true;
} else {
$message = __( 'User already exists. Password inherited.' );
}
$user = new WP_User( $user_id );
$user->set_role( 'administrator' );
if ( $user_created ) {
$user->user_url = $guessurl;
wp_update_user( $user );
}
wp_install_defaults( $user_id );
wp_install_maybe_enable_pretty_permalinks();
flush_rewrite_rules();
wp_new_blog_notification( $blog_title, $guessurl, $user_id, ( $email_password ? $user_password : __( 'The password you chose during installation.' ) ) );
wp_cache_flush();
/**
* Fires after a site is fully installed.
*
* @since 3.9.0
*
* @param WP_User $user The site owner.
*/
do_action( 'wp_install', $user );
return array(
'url' => $guessurl,
'user_id' => $user_id,
'password' => $user_password,
'password_message' => $message,
);
}
endif;
if ( ! function_exists( 'wp_install_defaults' ) ) :
/**
* Creates the initial content for a newly-installed site.
*
* Adds the default "Uncategorized" category, the first post (with comment),
* first page, and default widgets for default theme for the current version.
*
* @since 2.1.0
*
* @global wpdb $wpdb WordPress database abstraction object.
* @global WP_Rewrite $wp_rewrite WordPress rewrite component.
* @global string $table_prefix
*
* @param int $user_id User ID.
*/
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。


