Crée le contenu initial pour un site nouvellement installé.

Description

Ajoute la catégorie "Uncategorized" par défaut, le premier article (avec commentaire), la première page et les widgets par défaut du thème par défaut pour la version actuelle.

Paramètres

$user_id

(int)(Obligatoire)ID de l'utilisateur.

Source

Fichier : wp-admin/includes/upgrade.php

functionwp_install_defaults($user_id){global$wpdb,$wp_rewrite,$table_prefix;// Default category.$cat_name=__('Uncategorized');/* translators: Default category slug. */$cat_slug=sanitize_title(_x('Uncategorized','Default category slug'));if(global_terms_enabled()){$cat_id=$wpdb->get_var($wpdb->prepare("SELECT cat_ID FROM {$wpdb->sitecategories} WHERE category_nicename = %s",$cat_slug));if(null==$cat_id){$wpdb->insert($wpdb->sitecategories,array('cat_ID'=>0,'cat_name'=>$cat_name,'category_nicename'=>$cat_slug,'last_updated'=>current_time('mysql',true),));$cat_id=$wpdb->insert_id;}update_option('default_category',$cat_id);}else{$cat_id=1;}$wpdb->insert($wpdb->terms,array('term_id'=>$cat_id,'name'=>$cat_name,'slug'=>$cat_slug,'term_group'=>0,));$wpdb->insert($wpdb->term_taxonomy,array('term_id'=>$cat_id,'taxonomy'=>'category','description'=>'','parent'=>0,'count'=>1,));$cat_tt_id=$wpdb->insert_id;// First post.$now=current_time('mysql');$now_gmt=current_time('mysql',1);$first_post_guid=get_option('home')'/?p=1';if(is_multisite()){$first_post=get_site_option('first_post');if(!$first_post){$first_post="n

"/* translators: First post content. %s: Site link. */__('Welcome to %s. This is your first post. Edit or delete it, then start writing!')"

n"
;}$first_post=sprintf($first_post,sprintf('%s',esc_url(network_home_url()),get_network()->site_name));// Back-compat for pre-4.4.$first_post=str_replace('SITE_URL',esc_url(network_home_url()),$first_post);$first_post=str_replace('SITE_NAME',get_network()->site_name,$first_post);}else{$first_post="n

"/* translators: First post content. %s: Site link. */__('Welcome to WordPress. This is your first post. Edit or delete it, then start writing!')"

n"
;}$wpdb->insert($wpdb->posts,array('post_author'=>$user_id,'post_date'=>$now,'post_date_gmt'=>$now_gmt,'post_content'=>$first_post,'post_excerpt'=>'','post_title'=>__('Hello world!'),/* translators: Default post slug. */'post_name'=>sanitize_title(_x('hello-world','Default post slug')),'post_modified'=>$now,'post_modified_gmt'=>$now_gmt,'guid'=>$first_post_guid,'comment_count'=>1,'to_ping'=>'','pinged'=>'','post_content_filtered'=>'',));$wpdb->insert($wpdb->term_relationships,array('term_taxonomy_id'=>$cat_tt_id,'object_id'=>1,));// Default comment.if(is_multisite()){$first_comment_author=get_site_option('first_comment_author');$first_comment_email=get_site_option('first_comment_email');$first_comment_url=get_site_option('first_comment_url',network_home_url());$first_comment=get_site_option('first_comment');}$first_comment_author=!empty($first_comment_author)?$first_comment_author:__('A WordPress Commenter');$first_comment_email=!empty($first_comment_email)?$first_comment_email:'[email protected]';$first_comment_url=!empty($first_comment_url)?$first_comment_url:'https://wordpress.org/';$first_comment=!empty($first_comment)?$first_comment:__('Hi, this is a comment. To get started with moderating, editing, and deleting comments, please visit the Comments screen in the dashboard. Commenter avatars come from Gravatar.');$wpdb->insert($wpdb->comments,array('comment_post_ID'=>1,'comment_author'=>$first_comment_author,'comment_author_email'=>$first_comment_email,'comment_author_url'=>$first_comment_url,'comment_date'=>$now,'comment_date_gmt'=>$now_gmt,'comment_content'=>$first_comment,'comment_type'=>'comment',));// First page.if(is_multisite()){$first_page=get_site_option('first_page');}if(empty($first_page)){$first_page="n

";/* translators: First page content. */$first_page.=__("This is an example page. It's different from a blog post because it will stay in one place and will show up in your site navigation (in most themes). Most people start with an About page that introduces them to potential site visitors. It might say something like this:");$first_page.="

nnn"
;$first_page.="n

";/* translators: First page content. */$first_page.=__("Hi there! I'm a bike messenger by day, aspiring actor by night, and this is my website. I live in Los Angeles, have a great dog named Jack, and I like piña coladas. (And gettin' caught in the rain.)");$first_page.="

nnn"
;$first_page.="n

";/* translators: First page content. */$first_page.=__('...or something like this:');$first_page.="

nnn"
;$first_page.="n

";/* translators: First page content. */$first_page.=__('The XYZ Doohickey Company was founded in 1971, and has been providing quality doohickeys to the public ever since. Located in Gotham City, XYZ employs over 2,000 people and does all kinds of awesome things for the Gotham community.');$first_page.="

nnn"
;$first_page.="n

";$first_page.=sprintf(/* translators: First page content. %s: Site admin URL. */__('As a new WordPress user, you should go to your dashboard to delete this page and create new pages for your content. Have fun!'),admin_url());$first_page.="

n"
;}$first_post_guid=get_option('home')'/?page_id=2';$wpdb->insert($wpdb->posts,array('post_author'=>$user_id,'post_date'=>$now,'post_date_gmt'=>$now_gmt,'post_content'=>$first_page,'post_excerpt'=>'','comment_status'=>'closed','post_title'=>__('Sample Page'),/* translators: Default page slug. */'post_name'=>__('sample-page'),'post_modified'=>$now,'post_modified_gmt'=>$now_gmt,'guid'=>$first_post_guid,'post_type'=>'page','to_ping'=>'','pinged'=>'','post_content_filtered'=>'',));$wpdb->insert($wpdb->postmeta,array('post_id'=>2,'meta_key'=>'_wp_page_template','meta_value'=>'default',));// Privacy Policy page.if(is_multisite()){// Disable by default unless the suggested content is provided.$privacy_policy_content=get_site_option('default_privacy_policy_content');}else{if(!class_exists('WP_Privacy_Policy_Content')){include_onceABSPATH'wp-admin/includes/class-wp-privacy-policy-content.php';}$privacy_policy_content=WP_Privacy_Policy_Content::get_default_content();}if(!empty($privacy_policy_content)){$privacy_policy_guid=get_option('home')'/?page_id=3';$wpdb->insert($wpdb->posts,array('post_author'=>$user_id,'post_date'=>$now,'post_date_gmt'=>$now_gmt,'post_content'=>$privacy_policy_content,'post_excerpt'=>'','comment_status'=>'closed','post_title'=>__('Privacy Policy'),/* translators: Privacy Policy page slug. */'post_name'=>__('privacy-policy'),'post_modified'=>$now,'post_modified_gmt'=>$now_gmt,'guid'=>$privacy_policy_guid,'post_type'=>'page','post_status'=>'draft','to_ping'=>'','pinged'=>'','post_content_filtered'=>'',));$wpdb->insert($wpdb->postmeta,array('post_id'=>3,'meta_key'=>'_wp_page_template','meta_value'=>'default',));update_option('wp_page_for_privacy_policy',3);}// Set up default widgets for default theme.update_option('widget_search',array(2=>array('title'=>''),'_multiwidget'=>1,));update_option('widget_recent-posts',array(2=>array('title'=>'','number'=>5,),'_multiwidget'=>1,));update_option('widget_recent-comments',array(2=>array('title'=>'','number'=>5,),'_multiwidget'=>1,));update_option('widget_archives',array(2=>array('title'=>'','count'=>0,'dropdown'=>0,),'_multiwidget'=>1,));update_option('widget_categories',array(2=>array('title'=>'','count'=>0,'hierarchical'=>0,'dropdown'=>0,),'_multiwidget'=>1,));update_option('widget_meta',array(2=>array('title'=>''),'_multiwidget'=>1,));update_option('sidebars_widgets',array('wp_inactive_widgets'=>array(),'sidebar-1'=>array(0=>'search-2',1=>'recent-posts-2',2=>'recent-comments-2',),'sidebar-2'=>array(0=>'archives-2',1=>'categories-2',2=>'meta-2',),'array_version'=>3,));if(!is_multisite()){update_user_meta($user_id,'show_welcome_panel',1);}elseif(!is_super_admin($user_id)&&!metadata_exists('user',$user_id,'show_welcome_panel')){update_user_meta($user_id,'show_welcome_panel',2);}if(is_multisite()){// Flush rules to pick up the new page.$wp_rewrite->init();$wp_rewrite->flush_rules();$user=newWP_User($user_id);$wpdb->update($wpdb->options,array('option_value'=>$user->user_email),array('option_name'=>'admin_email'));// Remove all perms except for the login user.$wpdb->query($wpdb->prepare("DELETE FROM $wpdb->usermeta WHERE user_id != %d AND meta_key = %s",$user_id,$table_prefix'user_level'));$wpdb->query($wpdb->prepare("DELETE FROM $wpdb->usermeta WHERE user_id != %d AND meta_key = %s",$user_id,$table_prefix'capabilities'));// Delete any caps that snuck into the previously active blog. (Hardcoded to blog 1 for now.)// TODO: Get previous_blog_id.if(!is_super_admin($user_id)&&1!=$user_id){$wpdb->delete($wpdb->usermeta,array('user_id'=>$user_id,'meta_key'=>$wpdb->base_prefix'1_capabilities',));}}}

Related

Utilise

UtilisationsDescription
wp-admin/includes/class-wp-privacy-policy-content.php : WP_Privacy_Policy_Content::get_default_content()

Renvoie le contenu de la politique de confidentialité suggéré par défaut.

wp-includes/ms-network.php : get_network()

Récupère les données du réseau étant donné un ID de réseau ou un objet de réseau.

wp-includes/class-wp-user.php : WP_User::__construct()

Constructeur.

wp-includes/capabilities.php : is_super_admin()

Détermine si l'utilisateur est un administrateur du site.

wp-includes/l10n.php : __()

Récupérer la traduction de $text.

wp-includes/l10n.php : _x()

Récupérer la chaîne traduite avec le contexte gettext.

wp-includes/formatting.php : esc_url()

Vérifie et nettoie une URL.

wp-includes/formatting.php : sanitize_title()

Sanitise une chaîne de caractères en un slug, qui peut être utilisé dans les URL ou les attributs HTML.

wp-includes/load.php : is_multisite()

Si Multisite est activé.

wp-includes/functions.php : global_terms_enabled()

Détermine si les termes globaux sont activés.

wp-includes/functions.php : current_time()

Récupère l'heure actuelle en fonction du type spécifié.

wp-includes/link-template.php : réseau_home_url()

Récupère l'URL d'accueil pour le réseau actuel.

wp-includes/link-template.php : admin_url()

Récupère l'URL de la zone d'administration pour le site actuel.

wp-includes/option.php : get_site_option()

Récupérer une valeur d'option pour le réseau actuel en fonction du nom de l'option.

wp-includes/option.php : update_option()

Met à jour la valeur d'une option qui a déjà été ajoutée.

wp-includes/option.php : get_option()

Récupère une valeur d'option en fonction d'un nom d'option.

wp-includes/user.php : update_user_meta()

Mise à jour du champ méta de l'utilisateur en fonction de son identifiant.

wp-includes/class-wp-rewrite.php : WP_Rewrite::init()

Configure les propriétés de l'objet.

wp-includes/class-wp-rewrite.php : WP_Rewrite::flush_rules()

Supprime les règles de réécriture, puis recrée des règles de réécriture.

wp-includes/wp-db.php : wpdb::get_var()

Récupère une variable de la base de données.

wp-includes/wp-db.php : wpdb::insert()

Insère une ligne dans la table.

wp-includes/wp-db.php : wpdb::update()

Met à jour une ligne dans la table.

wp-includes/wp-db.php : wpdb::query()

Effectue une requête sur la base de données MySQL, en utilisant la connexion actuelle à la base de données.

wp-includes/wp-db.php : wpdb::delete()

Supprime une ligne dans la table.

wp-includes/wp-db.php : wpdb::prepare()

Prépare une requête SQL pour une exécution sûre.

wp-includes/meta.php : metadata_exists()

Détermine si un champ méta avec la clé donnée existe pour l'ID d'objet donné.

Utilisé par

Utilisé parDescription
wp-includes/ms-site.php : wp_initialize_site()

Exécute la routine d'initialisation pour un site donné.

wp-admin/includes/upgrade.php : wp_install()

Installe le site.

wp-includes/ms-deprecated.php : install_blog_defaults()

Définir les valeurs par défaut du blog.

Changelog

VersionDescription
2.1.0Introduit.