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

Description

Il n'est pas nécessaire de sérialiser les valeurs. Si la valeur doit être sérialisée, alors elle sera sérialisée avant d'être insérée dans la base de données. Rappelez-vous que les ressources ne peuvent pas être sérialisées ou ajoutées en tant qu'option.

Si l'option n'existe pas, elle sera créée.

Cette fonction est conçue pour fonctionner avec ou sans utilisateur connecté. En termes de sécurité, les développeurs de plugins doivent vérifier les capacités de l'utilisateur actuel avant de mettre à jour les options.

Paramètres

$option

(chaîne de caractères)(Obligatoire)Nom de l'option à mettre à jour. Il est attendu qu'il ne soit pas en caractères SQL.

$valeur

(mixte)(obligatoire)Valeur de l'option. Doit être sérialisable si non scalaire. On s'attend à ce qu'elle ne soit pas escamotée en SQL.

$autoload

(chaîne de caractères|bool)(facultatif) Si l'on veut charger l'option au démarrage de WordPress. Pour les options existantes, $autoload ne peut être mis à jour qu'en utilisant update_option() si $value est également modifié. Accepte 'yes'|true pour activer ou 'no'|false pour désactiver. Pour les options inexistantes, la valeur par défaut est 'yes'.

Valeur par défaut : null

Retourner

(bool) True si la valeur a été mise à jour, false sinon.

Source

Fichier : wp-includes/option.php

functionupdate_option($option,$value,$autoload=null){global$wpdb;$option=trim($option);if(empty($option)){returnfalse;}/*
	 * Until a proper _deprecated_option() function can be introduced,
	 * redirect requests to deprecated keys to the new, correct ones.
	 */$deprecated_keys=array('blacklist_keys'=>'disallowed_keys','comment_whitelist'=>'comment_previously_approved',);if(!wp_installing()&&isset($deprecated_keys[$option])){_deprecated_argument(__FUNCTION__,'5.5.0',sprintf(/* translators: 1: Deprecated option key, 2: New option key. */__('The "%1$s" option key has been renamed to "%2$s".'),$option,$deprecated_keys[$option]));returnupdate_option($deprecated_keys[$option],$value,$autoload);}wp_protect_special_option($option);if(is_object($value)){$value=clone$value;}$value=sanitize_option($option,$value);$old_value=get_option($option);/**
	 * Filters a specific option before its value is (maybe) serialized and updated.
	 *
	 * The dynamic portion of the hook name, `$option`, refers to the option name.
	 *
	 * @since 2.6.0
	 * @since 4.4.0 The `$option` parameter was added.
	 *
	 * @param mixed  $value     The new, unserialized option value.
	 * @param mixed  $old_value The old option value.
	 * @param string $option    Option name.
	 */$value=apply_filters("pre_update_option_{$option}",$value,$old_value,$option);/**
	 * Filters an option before its value is (maybe) serialized and updated.
	 *
	 * @since 3.9.0
	 *
	 * @param mixed  $value     The new, unserialized option value.
	 * @param string $option    Name of the option.
	 * @param mixed  $old_value The old option value.
	 */$value=apply_filters('pre_update_option',$value,$option,$old_value);/*
	 * If the new and old values are the same, no need to update.
	 *
	 * Unserialized values will be adequate in most cases. If the unserialized
	 * data differs, the (maybe) serialized data is checked to avoid
	 * unnecessary database calls for otherwise identical object instances.
	 *
	 * See https://core.trac.wordpress.org/ticket/38903
	 */if($value===$old_value||maybe_serialize($value)===maybe_serialize($old_value)){returnfalse;}/** This filter is documented in wp-includes/option.php */if(apply_filters("default_option_{$option}",false,$option,false)===$old_value){// Default setting for new options is 'yes'.if(null===$autoload){$autoload='yes';}returnadd_option($option,$value,'',$autoload);}$serialized_value=maybe_serialize($value);/**
	 * Fires immediately before an option value is updated.
	 *
	 * @since 2.9.0
	 *
	 * @param string $option    Name of the option to update.
	 * @param mixed  $old_value The old option value.
	 * @param mixed  $value     The new option value.
	 */do_action('update_option',$option,$old_value,$value);$update_args=array('option_value'=>$serialized_value,);if(null!==$autoload){$update_args['autoload']=('no'===$autoload||false===$autoload)?'no':'yes';}$result=$wpdb->update($wpdb->options,$update_args,array('option_name'=>$option));if(!$result){returnfalse;}$notoptions=wp_cache_get('notoptions','options');if(is_array($notoptions)&&isset($notoptions[$option])){unset($notoptions[$option]);wp_cache_set('notoptions',$notoptions,'options');}if(!wp_installing()){$alloptions=wp_load_alloptions(true);if(isset($alloptions[$option])){$alloptions[$option]=$serialized_value;wp_cache_set('alloptions',$alloptions,'options');}else{wp_cache_set($option,$serialized_value,'options');}}/**
	 * Fires after the value of a specific option has been successfully updated.
	 *
	 * The dynamic portion of the hook name, `$option`, refers to the option name.
	 *
	 * @since 2.0.1
	 * @since 4.4.0 The `$option` parameter was added.
	 *
	 * @param mixed  $old_value The old option value.
	 * @param mixed  $value     The new option value.
	 * @param string $option    Option name.
	 */do_action("update_option_{$option}",$old_value,$value,$option);/**
	 * Fires after the value of an option has been successfully updated.
	 *
	 * @since 2.9.0
	 *
	 * @param string $option    Name of the updated option.
	 * @param mixed  $old_value The old option value.
	 * @param mixed  $value     The new option value.
	 */do_action('updated_option',$option,$old_value,$value);returntrue;}

Related

Utilise

Utilisations Description
wp-includes/load.php : wp_installing()

Vérifie ou définit si WordPress est en mode "installation".

wp-includes/cache.php : wp_cache_get()

Récupère le contenu du cache par clé et par groupe.

wp-includes/cache.php : wp_cache_set()

Sauvegarde les données dans le cache.

wp-includes/l10n.php : __()

Récupère la traduction de $text.

wp-includes/formatting.php : sanitize_option()

Sanitise diverses valeurs d'option en fonction de la nature de l'option.

wp-includes/functions.php : _deprecated_argument()

Marquer un argument de fonction comme déprécié et informer quand il a été utilisé.

wp-includes/functions.php : maybe_serialize()

Sérialise les données, si nécessaire.

wp-includes/plugin.php : apply_filters()

Appelle les fonctions de rappel qui ont été ajoutées à un crochet de filtre.

wp-includes/plugin.php : do_action()

Exécute les fonctions accrochées à un crochet d'action spécifique.

wp-includes/option.php : update_option()

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

wp-includes/option.php : add_option()

Ajoute une nouvelle option.

wp-includes/option.php : wp_load_alloptions()

Charge et met en cache toutes les options autoloadées, si elles sont disponibles ou toutes les options.

wp-includes/option.php : pre_update_option_{$option}

Filtre une option spécifique avant que sa valeur ne soit (peut-être) sérialisée et mise à jour.

wp-includes/option.php : pre_update_option

Filtre une option avant que sa valeur ne soit (peut-être) sérialisée et mise à jour.

wp-includes/option.php : option_mise_à_jour

Se déclenche immédiatement avant la mise à jour de la valeur d'une option.

wp-includes/option.php : update_option_{$option}

Se déclenche après que la valeur d'une option spécifique a été mise à jour avec succès.

wp-includes/option.php : option_mis_à_jour

Se déclenche après que la valeur d'une option ait été mise à jour avec succès.

wp-includes/option.php : wp_protect_special_option()

Protège l'option spéciale de WordPress contre toute modification.

wp-includes/option.php : get_option()

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

wp-includes/option.php : option_par_défaut_{$option}

Filtre la valeur par défaut d'une option.

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

Met à jour une ligne dans la table.

Utilisé par

Utilisé par Description
wp-includes/https-detection.php :wp_update_https_detection_errors()

Exécute une requête HTTPS à distance pour détecter si le HTTPS est supporté, et stocke les erreurs potentielles.

wp-includes/https-migration.php :wp_update_urls_to_https()

Mise à jour de l'option 'home' et 'siteurl' pour utiliser la variante HTTPS de leur URL.

wp-includes/https-migration.php :wp_update_https_migration_required()

Met à jour l'option 'https_migration_required' si nécessaire lorsque l'URL donnée a été mise à jour de HTTP à HTTPS.

wp-includes/comment.php : _wp_batch_update_comment_type()

Met à jour le type de commentaire pour un lot de commentaires.

wp-admin/includes/class-wp-automatic-updater.php : WP_Automatic_Updater::send_plugin_theme_email()

Envoie un courriel lors de l'achèvement ou de l'échec d'une mise à jour de fond de plugin ou de thème.

wp-includes/class-wp-recovery-mode-key-service.php : WP_Recovery_Mode_Key_Service::update_keys()

Met à jour les enregistrements des clés de récupération.

wp-includes/class-wp-recovery-mode-email-service.php : WP_Recovery_Mode_Email_Service::maybe_send_recovery_mode_email()

Envoie l'email du mode de récupération si la limite de taux n'a pas été envoyée.

wp-includes/class-wp-paused-extensions-storage.php : WP_Paused_Extensions_Storage::set()

Enregistre une erreur d'extension.

wp-includes/class-wp-paused-extensions-storage.php : WP_Paused_Extensions_Storage::delete()

Oublie une erreur d'extension enregistrée précédemment.

wp-includes/class-wp-paused-extensions-storage.php : WP_Paused_Extensions_Storage::delete_all()

Supprime toutes les extensions en pause.

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

Vérification rapide si une info de confidentialité a changé.

wp-includes/class-wp-customize-manager.php : WP_Customize_Manager::update_stashed_theme_mod_settings()

Mise à jour des paramètres du mod du thème caché.

wp-includes/class-wp-customize-manager.php : WP_Customize_Manager::save_changeset_post()

Sauvegarde le post pour le changeset chargé.

wp-includes/rest-api/endpoints/class-wp-rest-settings-controller.php : WP_REST_Settings_Controller::update_item()

Met à jour les paramètres de l'objet settings.

wp-includes/functions.php : _delete_option_fresh_site()

Supprime l'option de site frais.

wp-admin/includes/class-wp-upgrader.php : WP_Upgrader::create_lock()

Crée un verrou en utilisant les options de WordPress.

wp-includes/class-wp-customize-setting.php : WP_Customize_Setting::set_root_value()

Définit la valeur racine d'un paramètre, notamment pour les paramètres multidimensionnels.

wp-includes/option.php : update_network_option()

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

wp-admin/includes/ajax-actions.php : wp_ajax_delete_inactive_widgets()

Gestionnaire Ajax pour la suppression des widgets inactifs.

wp-includes/customize/class-wp-customize-nav-menu-setting.php : WP_Customize_Nav_Menu_Setting::update()

Créer/mettre à jour le terme nav_menu pour ce paramètre.

wp-includes/taxonomy.php : _wp_batch_split_terms()

Scinde un lot de termes de taxonomie partagés.

wp-admin/includes/class-theme-upgrader.php : Theme_Upgrader::upgrade()

Mise à niveau d'un thème.

wp-admin/includes/class-theme-upgrader.php : Theme_Upgrader::bulk_upgrade()

Mise à niveau de plusieurs thèmes à la fois.

wp-admin/includes/class-plugin-upgrader.php : Plugin_Upgrader::bulk_upgrade()

Mise à niveau en vrac de plusieurs plugins à la fois.

wp-admin/includes/class-plugin-upgrader.php : Plugin_Upgrader::upgrade()

Mise à niveau d'un plugin.

wp-admin/includes/class-wp-plugins-list-table.php : WP_Plugins_List_Table::prepare_items()
wp-admin/includes/misc.php : update_option_new_admin_email()

Envoyer un email de demande de confirmation lorsqu'un changement d'adresse email de l'administrateur du site est tenté.

wp-admin/includes/misc.php : update_recently_edited()

Met à jour le fichier "récemment édité" pour l'éditeur du plugin ou du thème.

wp-admin/includes/schema.php : populate_options()

Créer les options de WordPress et définir les valeurs par défaut.

wp-admin/includes/dashboard.php : wp_dashboard_rss_control()

Le contrôle du widget du tableau de bord RSS.

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

Crée un thème de site.

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

Désactive le plugin Automattic widgets, qui a été fusionné dans le noyau.

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

Désactive le gestionnaire de liens lors de la mise à niveau si, au moment de la mise à niveau, aucun lien n'existe dans la BD.

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

Installe le site.

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

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

wp-admin/includes/plugin.php : uninstall_plugin()

Désinstallation d'un seul plugin.

wp-admin/includes/plugin.php : deactivate_plugins()

Désactive un seul plugin ou plusieurs plugins.

wp-admin/includes/plugin.php : validate_active_plugins()

Validation des plugins actifs

wp-admin/includes/plugin.php : activate_plugin()

Tente l'activation du plugin dans un "bac à sable" et redirige en cas de succès.

wp-admin/includes/nav-menu.php : wp_nav_menu_update_menu_items()

Sauvegarde les éléments du menu nav.

wp-admin/includes/file.php : request_filesystem_credentials()

Affiche un formulaire à l'utilisateur pour lui demander ses coordonnées FTP/SSH afin de se connecter au système de fichiers.

wp-includes/class-wp-roles.php : WP_Roles::add_cap()

Ajout d'une capacité au rôle.

wp-includes/class-wp-roles.php : WP_Roles::remove_cap()

Supprime la capacité du rôle.

wp-includes/class-wp-roles.php : WP_Roles::add_role()

Ajouter le nom du rôle avec les capacités à la liste.

wp-includes/class-wp-roles.php : WP_Roles::remove_role()

Suppression du rôle par son nom.

wp-includes/cron.php : _set_cron_array()

Met à jour l'option cron avec le nouveau tableau cron.

wp-includes/cron.php : _upgrade_cron_array()

Mise à niveau d'un tableau d'informations Cron.

wp-includes/theme.php : check_theme_switched()

Vérifie si un thème a été modifié et exécute le hook 'after_switch_theme' au prochain chargement de WP.

wp-includes/theme.php : set_theme_mod()

Met à jour la valeur de modification du thème pour le thème actuel.

wp-includes/theme.php : remove_theme_mod()

Supprime le nom de la modification du thème de la liste des thèmes actuels.

wp-includes/theme.php : switch_theme()

Commute le thème.

wp-includes/theme.php : get_theme_mods()

Récupère toutes les modifications du thème.

wp-includes/class-wp-theme.php : WP_Theme::get_allowed_on_site()

Renvoie un tableau de noms de feuilles de style des thèmes autorisés sur le site.

wp-includes/taxonomy.php : _get_term_hierarchy()

Récupère les enfants de la taxonomie en tant qu'ID de terme.

wp-includes/taxonomy.php : register_taxonomie()

Crée ou modifie un objet taxonomie.

wp-includes/plugin.php : register_uninstall_hook()

Définir le crochet de désinstallation pour un plugin.

wp-includes/option.php : set_transient()

Définit/met à jour la valeur d'un transitoire.

wp-includes/option.php : update_option()

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

wp-includes/post.php : _reset_front_page_settings_for_post()

Réinitialise les paramètres page_on_front, show_on_front et page_for_post lorsqu'une page liée est supprimée ou mise à la corbeille.

wp-includes/post.php : stick_post()

Rendre un post collant.

wp-includes/post.php : unstick_post()

Décrocher un post.

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

Définit la structure principale des permaliens pour le site.

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

Définit la base de la catégorie pour le permalien de la catégorie.

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

Définit la base des balises pour le permalien des balises.

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

Récupère les règles de réécriture.

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/revision.php : _wp_upgrade_revisions_of_post()

Mettre à niveau l'auteur des révisions, ajouter le post actuel comme une révision et définir la version des révisions à 1.

wp-includes/ms-functions.php : update_posts_count()

Mise à jour du nombre d'articles d'un blog.

wp-includes/ms-functions.php : global_terms()

Maintient une liste canonique de termes en synchronisant les termes créés pour chaque blog avec la table de termes globale.

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

Installer un blog vide.

wp-includes/ms-blogs.php : update_blog_option()

Mise à jour d'une option pour un blog particulier.

wp-includes/class-wp-xmlrpc-server.php : wp_xmlrpc_server::wp_setOptions()

Mise à jour des options du blog.

wp-includes/class-wp-widget.php : WP_Widget::save_settings()

Sauvegarde les paramètres pour toutes les instances de la classe de widget.

wp-includes/widgets.php : wp_set_sidebars_widgets()

Définir l'option de widgets de barres latérales pour mettre à jour les barres latérales.

wp-includes/widgets.php : wp_convert_widget_settings()

Convertit les paramètres des widgets du format simple au format multi-widget.

Changelog

Version Description
4.2.0 Le site $autoload a été ajouté.
1.0.0 Introduit.