WordPress Autosave beeinflussen

Die Zeiten ändern sich.

Dieser Beitrag scheint älter als 10 Jahre zu sein – eine lange Zeit im Internet. Der Inhalt ist vielleicht veraltet.

Autosave in WP 2.5

WordPress bietet seit der Version 2.2 die automatische Sicherung des Editorbereiches. Dabei speichert WordPress alle 120s/60s (< Version 2.3/ ≥ Version 2.5) den Inhalt. Dieser Wert wird in einer Konstanten übergeben und kann mittels Plugin oder anderen Funktionen genutzt werden; ebenfalls kann der Wert beeinflusst werden.
Bis Version 2.3* war diese Funktion, die mittels Ajax-Technologie realisiert wird, nicht immer das, was der Name verspricht und es gab den einen oder anderen Fehler. Ab Version 2.5 von WordPress wurde auch hier gefeilt und die Funktion macht in den Tests eine recht guten Eindruck; mal sehen was der Livebetrieb vieler User bringen wird.

Wert beeinflussen

Hinterlegt man in einem Plugin oder in der wp-config.php die Definition des Intervalls, dann kann man die Zeit einfach und konsequent beeinflussen. Das Speichern findet trotzdem nur statt, wenn Aktivitäten im Editor stattfinden, somit könnte man auch den Intervall auf 1 Sekunde setzen - für alle besonders ängstlichen Autoren.

define( 'AUTOSAVE_INTERVAL', 120 ); // Autosave interval

Autosave in WP 2.3

Der Wert wird dann in der Funktion wp_just_in_time_script_localization() genutzt, zu finden in wp-includes/script-loader.php.

Autosave abschalten

Der folgenden kleine Snippet schaltet das Script für die Aufgabe des Autosave ab, damit gibt es in WordPress keinerlei Autosave mehr. Der Code gehört in ein Plugin oder weniger gut, in die functions.php des Themes.


function fb_disable_autosave() {
    wp_deregister_script( 'autosave' );
}
add_action( 'wp_print_scripts', 'fb_disable_autosave' );

Weitere Anpassungen

Natürlich lassen sich ebenfalls die Texte verändern, allerdings ist hier ein Eingreifen nicht zu empfehlen und wem die Ausgabe nicht gefällt, der sollte lieber mit Hilfe der Sprachdatei auf die Begriffe eingreifen oder via Plugin den String ändern.

Für Coder sind folgende Syntax interessant.
wp-includes/script-loader.php

'savingText' => __('Saving Draft…')

wp-admin/admin-ajax.php

$message = sprintf( __('Draft Saved at %s.'), date( __('g:i:s a'), current_time( 'timestamp', true ) ) );

Weitere Links zum Thema

8 Kommentare

Kommentare sind geschlossen.