Comment configurer les mises à jour automatiques dans WordPress 3.7?

32

WordPress 3.7 a ajouté des mises à jour automatiques. Comment cela fonctionne-t-il et comment puis-je configurer cette fonctionnalité?

Chip Bennett
la source

Réponses:

29

Les mises à jour automatiques sont automatiques.

Le comportement, base par défaut dans WordPress 3.7 est mise à jour automatique du noyau pour les versions mineures (c. - X.Y.Zà X.Y.Z+1.)

Aucune option de configuration n'est exposée dans l'interface utilisateur. Pour modifier le comportement, vous devez modifier votre wp-config.phpfichier ou ajouter des filtres:

Désactivation facile

Ajoutez ce qui suit à wp_config.php:

define( 'AUTOMATIC_UPDATER_DISABLED', true );

Vous pouvez également ajouter le filtre suivant:

add_filter( 'automatic_updater_disabled', '__return_true' );

Contrôle de mise à jour de base

Via wp-config.php:

// Update core - development, major, and minor versions
define( 'WP_AUTO_UPDATE_CORE', true );

// Update core - minor versions
define( 'WP_AUTO_UPDATE_CORE', 'minor' );

// Core update disabled
define( 'WP_AUTO_UPDATE_CORE', false );

Via des filtres:

// Enable nightlies (dev updates):
add_filter( 'allow_dev_auto_core_updates', '__return_true' );

// Enable major version updates:
add_filter( 'allow_major_auto_core_updates', '__return_true' );

// Disable minor updates
add_filter( 'allow_minor_auto_core_updates', '__return_false' );

Thèmes et plugins

Thèmes et plugins de mise à jour automatique tout ou rien:

Les mises à jour de thèmes et de plugins sont désactivées par défaut. Pour activer via le filtre:

add_filter( 'auto_update_plugin', '__return_true' );
add_filter( 'auto_update_theme', '__return_true' );

Ces filtres sont transmis à l'objet de mise à jour. il est donc possible de manipuler cet objet pour cibler des thèmes ou des plug-ins spécifiques à mettre à jour, soit en liste blanche (à inclure), soit en excluant des mises à jour automatiques.

Fichiers de traduction

Les mises à jour des fichiers de traduction sont activées par défaut. Pour désactiver via le filtre:

// Disable translation updates
add_filter( 'auto_update_translation', '__return_false' );

Mettre à jour les e-mails de résultats

Le programme de mise à jour envoie un courrier électronique de résultat en cas de succès, d’échec ou d’erreur critique. Pour désactiver via le filtre:

// Disable update emails
add_filter( 'auto_core_update_send_email', '__return_false' );

Ce filtre peut également être utilisé pour manipuler des courriels de mise à jour en fonction de ceux-ci $type(succès, échec, critique), de l’objet de type de mise à jour $core_updateou $result:

/* @param bool   $send        Whether to send the email. Default true.
 * @param string $type        The type of email to send.
 *                            Can be one of 'success', 'fail', 'critical'.
 * @param object $core_update The update offer that was attempted.
 * @param mixed  $result      The result for the core update. Can be WP_Error.
 */
apply_filters( 'auto_core_update_send_email', true, $type, $core_update, $result );

Lectures complémentaires

Entrée du Codex ici . Plus d'informations ici .

Chip Bennett
la source
5
Je pense que vous pouvez le faire pour une mise à jour de thème / plugin individuelle, comme indiqué dans les commentaires de Nacin "Les options de configuration précédentes sont tout ou rien. Vous pouvez cependant vouloir quelque chose de plus fin. Le auto_update_$type filter (auto_update_core, auto_update_plugin, auto_update_theme, auto_update_translation)est lancé pour des mises à jour spécifiques, car elles sont Prêt à être mis à jour. Ce filtre transmet à l'objet de mise à jour qui décrit ce que WordPress est sur le point de mettre à jour. Cela signifie que vous pouvez activer de manière sélective l'activation de plugins ou de thèmes individuels, par exemple, ou la liste blanche des mises à jour principales à venir. "
pollyplummer
1
@pollyplummer par tous les moyens, s'il vous plaît ajouter cette information à la réponse! C'est du bon matos. :)
Chip Bennett
1
@brasofilo " Dans la section" Mise à jour facile ", cela ne devrait pas être" Ou ajoutez le filtre suivant "? " - pas selon le Codex. Il recommande d'utiliser les deux.
Chip Bennett
1
Si je suis correctement la logique de base, elle passe d' abord par le filtre, puis par la constante. Si tel est le cas, nous devrions mettre à jour l'entrée Codex avec "ou". Je constate également que DISALLOW_FILE_MODStoute sorte de mise à jour est interrompue.
brasofilo
1
@Howdy_McGee Je viens de poster un guide expliquant comment exclure certains plugins . De plus, la page de mise à jour dans Wordpress vous indique si les mises à jour automatiques sont activées. S'il ne mentionne pas les mises à jour automatiques, utilisez ce plugin pour savoir pourquoi elles sont désactivées.
David
2

Vous pouvez vérifier si la configuration de votre site et de votre serveur prend en charge les mises à jour automatiques à l'aide du plug-in Background Update Tester . De Nacin: "Ce plugin vérifie la compatibilité de votre site et explique les éventuels problèmes."

Miriam Schwab
la source
Non mis à jour depuis 2015, les temps de wordpress ~ 4.1.
Kubanczyk