Wie konfiguriere ich automatische Updates in WordPress 3.7?

32

WordPress 3.7 fügte automatische Updates hinzu. Wie funktioniert das und wie kann ich diese Funktion konfigurieren?

Chip Bennett
quelle

Antworten:

29

Automatische Updates erfolgen automatisch.

Das grundlegende Standardverhalten in WordPress 3.7 ist die automatische Aktualisierung des Kerns für Nebenversionen (z. B. X.Y.Zbis X.Y.Z+1).

Auf der Benutzeroberfläche werden keine Konfigurationsoptionen angezeigt. Um das Verhalten zu ändern, müssen Sie Ihre wp-config.phpDatei ändern oder einige Filter hinzufügen:

Einfache Deaktivierung

Fügen Sie Folgendes hinzu zu wp_config.php:

define( 'AUTOMATIC_UPDATER_DISABLED', true );

Alternativ können Sie den folgenden Filter hinzufügen:

add_filter( 'automatic_updater_disabled', '__return_true' );

Core Update Control

Über 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 );

Über Filter:

// 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' );

Themes und Plugins

All-or-Nothing-Themen und Plugins für die automatische Aktualisierung:

Theme- und Plugin-Updates sind standardmäßig deaktiviert . So aktivieren Sie über Filter:

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

Diese Filter werden an das Aktualisierungsobjekt übergeben. So ist es möglich, dieses Objekt so zu bearbeiten, dass es auf bestimmte zu aktualisierende Designs oder Plugins abzielt, und zwar entweder in einer Whitelist (Einschließen) oder in einem Ausschluss von automatischen Aktualisierungen.

Übersetzungsdateien

Übersetzungsdatei Updates aktiviert standardmäßig. So deaktivieren Sie über Filter:

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

Ergebnis-E-Mails aktualisieren

Der Updater sendet eine Ergebnis-E-Mail bei Erfolg, Misserfolg oder kritischem Fehler. So deaktivieren Sie über Filter:

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

Dieser Filter kann auch verwendet werden, um Aktualisierungs-E-Mails nach E-Mail $type(erfolgreich, fehlgeschlagen, kritisch), Aktualisierungstypobjekt $core_updateoder nach folgenden Kriterien zu bearbeiten $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 );

Weitere Lektüre

Codex-Eintrag hier . Mehr Infos hier .

Chip Bennett
quelle
5
Ich denke, Sie können dies für ein einzelnes Theme / Plugin-Update gemäß Nacins Kommentaren tun. "Die vorherigen Konfigurationsoptionen sind alles oder nichts. Sie möchten jedoch möglicherweise etwas Feinkörnigeres. Das auto_update_$type filter (auto_update_core, auto_update_plugin, auto_update_theme, auto_update_translation)wird für bestimmte Updates ausgelöst, so wie sie sind ready to update. Diesem Filter wird das eigentliche Update-Objekt übergeben, das beschreibt, was WordPress zu aktualisieren hat. Dies bedeutet, dass Sie einzelne Plugins oder Themes selektiv für die Aktualisierung aktivieren oder anstehende Core-Updates auf die Whitelist setzen können. "
Pollyplummer
1
@pollyplummer auf jeden Fall, bitte füge diese Information der Antwort hinzu! Das ist gutes Zeug. :)
Chip Bennett
1
@brasofilo "Sollte es im Abschnitt" Easy Update "nicht" Oder den folgenden Filter hinzufügen "sein? " - nicht entsprechend dem Codex. Es wird empfohlen, beide zu verwenden.
Chip Bennett
1
Wenn ich der Kernlogik richtig folge, passiert sie zuerst den Filter und dann die Konstante. In diesem Fall sollten wir den Codex-Eintrag mit "oder" aktualisieren. Ich sehe auch, dass DISALLOW_FILE_MODSjede Art von Update angehalten wird.
Brasofilo
1
@Howdy_McGee Ich habe gerade eine Anleitung zum Ausschließen bestimmter Plugins gepostet . Die Update-Seite in Wordpress informiert Sie auch darüber, ob automatische Updates aktiviert sind. Wenn keine automatischen Updates erwähnt werden, verwenden Sie dieses Plugin , um zu erfahren, warum sie deaktiviert sind.
David
2

Sie können mit dem Plugin Background Update Tester prüfen, ob Ihre Site- und Serverkonfiguration automatische Updates unterstützt . Von Nacin: "Dieses Plugin überprüft Ihre Website auf Kompatibilität und erklärt alle Probleme."

Miriam Schwab
quelle
Nicht aktualisiert seit 2015, die Zeiten von WordPress ~ 4.1.
Kubanczyk