HARALD MELCHER

WordPress Themes und Plugins automatisch aktualisieren

WordPress kann Themes und Plugins automatisch aktualisieren. Dazu fügt man an einer Stelle im Code, die auf jeden Fall ausgeführt wird, ein Filter für die Theme- oder Plugin-Updates an. Eine geeignete Stelle ist z.B. die functions.php eines Themes.

Zum Anschalten aller Theme-Aktualisierungen dient add_filter( 'auto_update_theme', '__return_true' ); und zum Anschalten der Plugin- Aktualisierungen add_filter( 'auto_update_plugin', '__return_true' );

Ausschalten kann man entsprechend mit add_filter( 'auto_update_theme', '__return_false' ); und add_filter( 'auto_update_plugin', '__return_false' );

Updates auf verlässliche Plugins begrenzen

In einer produktiven Webseite liegen im unbesehenen Update aller Themes oder Plugins auch Risiken:

  • das aktualisierte Theme könnte geänderte Voreinstellungen des bisherigen Themes überschreiben. Gerade bei “custom CSS” ist das schnell passiert
  • das aktualisierte Theme oder Plugin hat noch Fehler. Manche WordPress-Administratorinnen warten daher mit der Aktualiserung auf Erfahrungsberichte von mutigeren Kollegen
  • die WordPress-Administratorin möchte vor größeren Updates noch eine Sicherungskopie der Datenbank machen

Folgendes Code-Schnipsel begrenzt die Plugin-Updates auf die relativ stabilen Plugins akismet und buddypress:

function auto_update_specific_plugins ( $update, $item ) {
    // Die "guten" Plugins
    $plugins = array ( 
        'akismet',
        'buddypress',
    );
    if ( in_array( $item->slug, $plugins ) ) {
        return true; // Die Guten immer updaten
    } else {
        // Wir wollen nicht updaten,
        // verwenden normale API Antwort
        return $update;
    }
}
add_filter( 'auto_update_plugin', 
    'auto_update_specific_plugins', 10, 2 );