Tipps und Tricks zur Webentwicklung und Alltagsthemen

WordPress: Revisionsverwaltung einsetzen, verwalten und optimieren

In diesem Artikel wird kurz das WordPress Plugin Delete-Revision vorgestellt mit dem alte Artikel Revisionen aus der WP-Datenbank gelöscht werden können. Darüber hinaus beschreibe ich kurz was Revisionen unter WordPress überhaupt sind und wie man das Erstellen von Revisionen unter WordPress komplett deaktiviert oder auf eine bestimmte Anzahl einschränkt.

Die Motivation mich nach langer Zeit mal wieder mit Revisionen unter WordPress zu beschäftigen bestand darin, die Zugriffsgeschwindigkeit auf meinen Weblog gleich zu halten oder sogar zu verbessern.

Was sind Revisionen

Revisionen sind ja nun nichts neues mehr unter WordPress, es gibt sie seit der WordPress Version 2.6. Dabei wird von jedem geschriebenem Artikel (post) oder Seite (page) eine Historie aufbewahrt. Der eine oder andere spricht dabei auch von “Versionierung oder Versionsverwaltung”. Dabei wird in regelmäßigen Abständen beim schreiben oder wenn man einen Artikel überarbeitet und speichert, die vorherige ursprüngliche Version mitsamt Autor, Zeiten und Auszügen abgespeichert. Dies geschieht immer als neuer, separater Datenbankeintrag in der Tabelle wp_posts. Die Tabelleneinträge werden entsprechend in der Spalte post_type mit dem Wert ‘revision’ versehen.

Beim Schreiben bzw. Bearbeiten eines Artikels oder einer Seite findet man die vorhandenen Revisionen ganz unten am Fußende der Seite. WordPress spricht dabei von ‘Artikelüberarbeitungen’.

revisionen-artikelueberarbeitungen

Hat man die Anzahl der Revisionen nicht eingeschränkt (siehe unten), so kann innerhalb von kurzer Zeit schon einmal eine stattliche Anzahl an Einträgen erzeugt werden, die dann später so gut wie gar nicht mehr verwendet werden. Dies bläht die Datenbank meines Erachtens nach unnötig auf.

Revisionen anschauen und vergleichen

Nun stellt sich aber die Frage: Warum Revisionsverwaltung? Ganz einfach, hat z.B. ein zweiter Autor einen Artikel überarbeitet und gespeichert, so hat nun der erste Autor die Möglichkeit die neue Version mit einer älteren Version zu vergleichen und evtl die Änderungen rückgängig zu machen.

Klickt man also auf eine Revision (Artikelüberarbeitung) bekommt man eine Übersicht, die den Inhalt des angeklickten Artikels zeigt. Darunter sieht man alle verfügbaren Revisionen in einer Liste. Leider wird der Inhalt nur als HTML-Code ausgegeben, das das Lesen nicht unbedingt unterstützt. Eine Umschaltung auf HTML Ansicht wäre da schon wünschenswert.

Revisionen Übersicht

Revisionen Übersicht

Hier kann man nun auch zwei Revisionen direkt miteinander vergleichen. Dazu einfach die beiden Artikel in der Liste auswählen und den Button “Überarbeitungen vergleichen” anklicken. Dadurch werden die beiden Revisionen gegenübergestellt und Änderungen hervorgehoben.

Zwei Revisionen direkt vergleichen

Zwei Revisionen direkt vergleichen

Ob dieser Vergleich nun sinnvoll oder sehr übersichtlich ist, darüber kann man sicherlich streiten. Ich denke bei längeren Artikeln wird es schwer überhaupt daraus zu erkennen.

Am Schluss kann man nun wenn man möchte die entsprechende Revision wieder herstellen. Dazu einfach die Aktion ‘Wiederherstellen’ auswählen und fertig. Das Gute dabei ist, das die Version die man gerade wieder überschrieben hat nun natürlich wieder eine Revision ist und man somit auch die Möglichkeit hat das ‘Wiederherstellen’ wieder rückgängig zu machen :-)

Revisionen (Versionierung) unter WordPress einstellen

Man kann die Versionierung unter WordPress auch komplett abschalten. Wer also gar nicht möchte das Revisionen zu den einzelnen Artikeln und Seiten in der Datenbank angelegt werden, der muss nur einen Eintrag in die WordPress Konfigurationsdatei wp-settings.php ändern.

Man setzt dazu den folgenden Eintrag

define('WP_POST_REVISIONS', 0);//Revisionen deaktivieren

Bedenke, das wenn man die Revision im nachhinein abschaltet hat, in der SQL-Datenbank trotzdem noch etliche überflüssige Revisions-Einträge drin sind. Aber zum löschen kannst du ja einfach das weiter unten genannte WP-Plugin verwenden.

Wer die Versionierung nicht ganz abschalten möchte, kann die max. Anzahl der zu erstellenden Revisionen z.B. auf zwei beschränken. Dazu einfach statt der 0 eine 2 angeben.

define('WP_POST_REVISIONS', 2); //Anzahl der Einträge auf zwei beschränkt

Wer meint er hat unendlich viel Platz in seiner Datenbank, der muss die Versionierung nicht einschränken und stellt für die Anzahl der zu erstellenden Revisionen den Wert -1 ein.

define('WP_POST_REVISIONS', -1); //Anzahl der Einträge nicht beschränkt

Alte Artikel Revisionen löschen mit dem WP-Plugin ‘Delete-Revision’

Bei dem sog. Delete-revision Manager handelt es sich um ein kleines WP-Plugin, mit dem man prüfen kann, welche Revisionen in der Datenbank vorhanden sind, die dann im zweitem Schritt gelöscht werden können. Als Ergebnis der Suche nach Revisionen wird in einer Liste angezeigt. Nun erst kann man entscheiden ob man die angezeigten Artikel Revisionen löschen möchte oder nicht, dazu klickt man am Ende der Liste auf den entsprechenden Button.

Liste Revisionen

Liste Revisionen

Mein Fazit zur Revisionsverwaltung unter WordPress

Für mich ist das erstellen dieser Art von Revisionsverwaltung ein erster guter Versuch gewesen, die Versionsverwaltung unter WordPress zu implementieren, wie sie unter anderen CMS Systemen bereits gang und gebe ist.

Revisionen mögen für den einen oder anderen wichtig sein und die Versionierung ist bestimmt von Nutzen, wenn man mit mehreren Autoren an einem Artikel schreibt, ich jedoch benötige sie eigentlich nicht. Aber man soll nie nie sagen und deswegen habe ich die Versionierung auch nicht ganz abgeschaltet.

Ich wende nun ab und zu mal das oben genannte WP-Plugin an, um die unnötig angefallenen Revisionseinträge aus der SQL Datenbank zu entfernen. Darüber hinaus habe ich in der WP Konfigurationsdatei die Anzahl der anfallenden Revisionen auf zwei pro Artikel eingeschränkt.

Diesen Beitrag weiterempfehlen:

  • del.icio.us
  • Facebook
  • Twitter
  • Google Bookmarks
  • Yigg
  • LinkArena
  • MisterWong.DE
  • Alltagz
  • SEOigg
  • Webnews.de
  • Favoriten.de
  • Technorati
  • Digg
  • Netvibes
  • Linkarchiv

Weitere beliebte Artikel

Artikel Daten

Veröffentlicht:
Samstag, 20. Juni 2009
Statistik:
Gelesen: 1174 · heute: 6 · zuletzt: 2. September 2010
Trackback:
Trackback-URL
Kommentar:
Du kannst hier einen Kommentar hinterlassen.
RSS-Feed 2.0:
Kommentar-Feed zum Artikel

Abonniere unsere neuesten Beitrage

hier folgt der feedbirner code

7 Kommentare (Hinterlasse einen Kommentar »)

  1. trends

    Hi Stefan,
    feines Posting. So richtig brauche ich die Versionierung nicht. In den meisten Blogs habe ich sie abgeschaltet. Das Plugin ist hilfreich, denn die Datenbank füllt sich schnell, wenn man etwas länger an einem Posting schreibt. Gibt es bei dem Plugin noch was zu beachten?
    Der YiGG-Button funtioniert nicht so, wie ich dachte. Da bin ich auf der Startseite rausgekommern :-(
    Dein Reiseprojekt ist schön geworden ;-) Dazu maile ich dir mal was.

    • Stefan Brandt (Autor)

      Hallo,
      nein bei dem Plugin muss man nichts beachten, es löscht wirklich nur die Einträge aus der Datenbank, die mit dem Flag ‘revision’ versehen sind.
      Das Löschen geschieht auch erst im zweitem Schritt, zuerst sieht man noch einmal die Liste aller Einträge die gelöscht werden sollen. Ich habe dies nun schon mehrfach auf meinem Blog gemacht und hinterher mit SQL Befehlen noch einmal getestet ob wirklich nur Revisionseinträge aus der posts Tabelle gelöscht wurden :-)

  2. Photo Pingalerie

    Hallo Stefan,ich habe in meinem Blog die Revisionierung über folgenden Eintrag in der wp-config.php abgeschaltet:

    define(’WP_POST_REVISIONS’, false);
    Dieser Eintrag schaltet das Speichern weiterer Versionen ab. Alte, bereits angelegte Versionen werden jedoch in der Datenbank behalten, die kann man jedoch mit dem von Dir aufgeführten WP-Plugin "Delete-Revision" löschen. :-)

    Weitere Einstellungmöglichkeiten: Versionierung einschalten:
    define(’WP_POST_REVISIONS’, true);
    Anzahl der Revisionen auf eine bestimmte Anzahl begrenzen:
    define(’WP_POST_REVISIONS’, 5);

    Viele Grüße Photo Pingalerie

    • Stefan Brandt (Autor)

      Hallo,
      ja stimmt, WordPress schreibt im original Codex folgendes

      WP_POST_REVISIONS:
      * true (default), -1: store every revision
      * false, 0: do not store any revisions (except the one autosave per post)
      * (int) > 0: store that many revisions (+1 autosave) per post. Old revisions are automatically deleted.

  3. netzbiss

    Hey,

    nach Deinem Beitrag habe ich das Plugin auch installiert und kann es jetzt ebenfalls empfehlen. Es löscht wirklich nur die Revisionen, keine Posts ;-)

    Obwohl ich ja noch nicht so lange am Bloggen bin, hat sich meine DB durch das Löschen von 64,0 KB auf 48 KB verringert.

  4. Manuel

    Super Beitrag! Habe mich nämlich gerade gefragt, wie ich die ganzen Artikelüberarbeitungen löschen kann. Da ich gerne mal zwischenspeicher haben sich inzwischen ein paar hundert davon angesammelt. Mit dem Plugin bin ich die nun endlich los. Meine Datenbank wird sich freuen! :)

  5. Björn

    Hallo,
    ein sehr hilfreicher Artikel, danke dafür!

    Eine Frage habe ich und hoffe, dass ich eine Antwort erhalte.
    Ist es irgendwie möglich, den Autor der letzten Revision auszulesen und darzustellen?
    Ich hoffe, Sie können mir bei dieser Frage weiterhelfen.

    Liebe Grüße,
    Björn

Schreibe einen Kommentar

Bitte benutzt nur eure Namen oder Nicknamen. Einträge mit Keywords oder offensichtliche Werbelinks werden als Spam markiert und gelöscht. Solltet ihr euren Kommentar nicht sofort sehen, so ist er wohl in der Spam-Sandbox gelandet. Ich werde ihn dann schnellst möglich bearbeiten.

XING - Stefan Brandt
no-nofollow blogoscoop Bewerte meinen Blog auf dem Blog-Verzeichnis bloggerei.de BlogPingR.de - Blog Ping-Dienst, Blogmonitor Web Development & Design Blogs - Blog Top Sites TopBlogs.de BlogTotal.de