WordPress: Artikel kollaborativ erstellen

Ich arbeite weiter an der Umsetzung meiner Ideensammlung, heute mal wieder:

Voransicht für Drafts

Gemeint ist eine öffentliche Voransicht für Entwürfe, um damit anderen Usern bereits vor der Fertigstellung eine Möglichkeit zu geben den Text/Inhalt zu korrigieren und zu ergänzen. Immer dann wenn es um Wissenerarbeitung und Wissensvermittlung geht, Texte oder auch einfach Sammlungen (Links, Bilder, Ideen) kollaborativ entstehen sollen, ist eine öffentliche Voransicht sinnvoll. Der Unterschied zu dem was man bereits mit den Grundfunktionen von WordPress über die User-Rollen erstellen kann, ist das Wörtchen „öffentlich“. Es soll nicht nur eine mit Userrechten ausgestattete Redaktion gleichzeit daran arbeiten können, sondern jeder. Vergleichbar dem Wiki-Prinzip mit dem Unterschied, dass es einen Zeitpunkt der Veröffentlichung gibt, der Artikel den Wiki-Status also verläßt.

Vor einer Weile hatte ich schon einmal darüber geschrieben, vor ein paar Tagen ist mir eine neue Idee gekommen und ich habe einen Weg gefunden, einen gewissen Workflow in die Idee einzubauen.

Die Grundidee umfasst folgenden Vorgang. Über die MultiSite Funktion von WordPress wird unter der Subdomain „drafts“ ein neues Blog eingerichtet. In diesem Blog werden die Entwürfe geschrieben und auch gleich (für Suchmaschinen gesperrt) veröffentlicht. Jeder der möchte kann dann über die Kommentarfunktion Hinweise, Ergänzungen oder Korrekturen (der Einfachheit halber hier nur „Ergänzungen“ genannt) eingeben. Diese Ergänzungen erhalten ähnlich einem Trouble Ticket einen Status „new“, „pending“ oder „done“ und natürlich kann eine Ergänzung auch als Spam markiert werden.

Alle Ergänzungen werden vom Autor abgearbeitet. Wird eine Ergänzung vom Autor nachrechiercht, schaltet er die Ergänzung auf „pending“, ist es abgearbeitet fließen die neuen Erkenntnisse in den Text ein und der Ergänzungsvorgang kann abgeschlossen werden, indem die Ergänzung den Status „done“ erhält.

Erreicht der Artikel die Veröffentlichungsreife kann der „Autor“ über einen Button „Veröffentlichen“ den kompletten Beitrag im Hauptblog automatisiert veröffentlichen. Der Artikel erscheint dabei unter Angabe aller Mitautoren und wenn gewünscht deren Links. Eventuell ist ein Link auf den Artikel im Drafts-blog sinnvoll und wünschenswert. Im Drafts-Blog hingegen wird die Kommentarfunktion geschlossen, es können also keine Ergänzungen mehr gemacht werden, eventueller weiterer Diskussionsbedarf kann dann im Hauptblog vollzogen werden.

Warum brauche ich einen extra Blog?

Ein extra Blog bringt eine ganze Menge Vorteile.

  • Suchmaschinen können über die Grundfunktionen leicht ausgesperrt werden.
  • Da die Entwürfe nicht mit den richtigen Veröffentlichungen auf dem Hauptblog verwechselt werden dürfen, sollte sich die grafische Umsetzung stark unterscheiden. Ein eigenes Draft-Theme und fertig.
  • Die Entwicklung der Drafts-Ebene kann unabhängig vom Hauptblog geschehen. Es ergeben sich daher auch keine Konflikte.
  • Möchte man die Sichtbarkeit der Entwürfe an eine Anmeldung knüpfen, ist dies leicht über bekannte Plugins zu realisieren.
  • Da WordPress ab 3.0 die MultiSite Funktion von Haus aus mitbringt und man diese nur aktivieren braucht, kann man prinzipiell jedem Blog eine Drafts-Ebene vorschalten. Die Standartweg für die Artikelertellung über den Hauptblog bleibt davon unberührt und funktioniert nach wie vor. Man kann also weiterhin „normal“ Bloggen und wenn man dann doch ab und zu einen Artikel kollaborativ erstellen möchte, ist die Möglichkeit gegeben.
  • Es ergibt sich automatisch ein eigener RSS Feed, sowohl über alle Entwürfe als auch über alle Ergänzungsvorschläge zu eiem Entwurf.

Das richtige Theme

Als Grundlage bietet sich das P2 Theme an. Mit dem P2 Theme lassen sich Artikel direkt aus dem Frontend heraus erstellen und auch editieren. Ausserdem bringt es weitere Funktionen mit, die dem Workflow gut tun. So werden z.B. auch neue Kommentare direkt jedem Artikelbetrachter ohne Website-Reload angezeigt. Zusätzlich hilft ein kurzes „Aufblinken“ einer Benachrichtigung, die Aufmerksamkeit darauf zu lenken. Braucht ein Autor z.B. noch eine Information oder eine Quelle, wäre es denkbar dies als Ergänzung (Kommentar) zu posten und zusätzlich seine Follower bei Twitter und Freunde bei Facebook, mit einem Link auf den Entwurf, danach zu befragen. Um die Zeit zu nutzen kann der Autor bereits an einem weiteren Detail weiterschreiben. Sollte eine Ergänzung eingehen, wird der Autor sofort, über die Seite selbst, darüber benachrichtigt.

Das P2 Theme unterstützt ausserdem die Child-Theme Funktion, eine Anpassung kann also immer unabhängig vom „Mutter-Theme“ erfolgen. Sollte ein Update des P2 Themes erscheinen, kann das (nach Überprüfung) auch einfach eingespielt werden. Ziel ist es sämtliche Funktionen über Ajax Requests also ohne Reload der Seite zu verwirklichen.

Workflow für Ergänzungen

Um sich leichter auf einen bestimmten Teil des Artikels für die Ergänzungen beziehen zu können, würde sich eine Erweiterung anbieten, die Frank Bültge in seinem Blog integriert und auch in einem Beitrag vorgestellt hat. Markiert man mit dem Courser einen Text oder auch nur ein Wort auf der Seite, wird der Link „ergänzen“ direkt neben dem markiertem Text eingeblendet. Klickt man diesen wird der markierte Text direkt als Zitat in das Kommentarformular kopiert und man hat sich superschnell auf eine Stelle im text bezogen.

Workflow beim Abarbeiten der Ergänzungen

Dieser Vorgang ist oben bereits ausreichend erklärt. Die Zuweisung vom Status der Ergänzung müsste sich relativ einfach über die Comments Meta Funktion lösen lassen. Für eine bessere Übersicht könnte man, grafisch über Tabs, die Ergänzungen sortiert nach „new (+pending)“, „done“ und „alle“ anbieten.

Beitrag im Hauptblog veröffentlichen

Die Idee des Übertragens von einem Blog in den nächsten stammt vom Plugin „Sitewide Tags„, welches von Donncha O Caoimh entwickelt wurde, um in einer Multi-Blog (oder Multi-User – WordPress MU) Umgebung eine übergreifende Schlagwortwolke erstellen zu können. Bekanntestes Beispiel ist die Schlagwortwolke von WordPress.com. Um diese Schlagwortwolke zu erstellen wird kurzerhand jeder Artikel in einem einzigen Extra-Blog gespiegelt und die Schlagwortwolke einfach aus allen Beiträgen dieses Extra-Blogs erstellt.

Der Funktionsumfang dieses Plugins reicht bereits aus, um das Übertragen unseres Entwurfs in den Hauptblog unter Einbezug von Kategorien, Tags und der Benutzerdefinierten Felder zu realisieren. Lediglich kleine Anpassungen sind notwendig, um z.B. nicht bei jeder Veröffentlichung im Drafts-Blog auch gleich den Übertrag in den Hauptblog zu vollziehen.

Mögliche Erweiterungen

Sollte man derartige Entwürfe in einer sehr großen Community einsetzen, kann es sehr schnell sehr unübersichtlich für den Autor werden. Abhilfe könnte hier eine Bewertung der Ergänzungen bringen. Man könnte die User dazu auffordern vor dem Eintragen einer Ergänzung erst die bereits geposteten Ergänzungen zu durchsuchen und statt der doppelten Eintragung, diese lieber mit einer positive Bewertung ( Gefällt mir 😉 ) zu pushen, damit sie leichter von Autor berücksichtigt werden kann. Ein Beispiel für eine solches System ist UserVoice.

Um daran gleich weiter zu stricken, könnte man auch ein „eigenes UserVoice“ auf seine Seite bringen und User eine Möglichkeit geben Beitragsideen oder was auch immer zu posten.

Mögliche Weiterentwicklung – die Zukunft

Besonders spannend finde ich die Funktion des Plugins Active Preview, die es dem User ermöglichen könnte das Schreiben des Autors live mitzuerleben. So wie man es von Google Wave und mittlerweile auch Google Docs kennt. Um die Ressourcen zu schönen würde ich allerdings eine Variante wählen, die lediglich aller 15 – 30 Sekunden via Ajax-Request abfragt, ob es für den aktuell angezeigten Artikel eine neue Version gibt, um ggf. diese dann einzublenden. (oder gleich PubSubHubbub – Push?)

Seit Version 2.6 gibt es in WordPress ein eigenes Revsionsmanagement. Bisher wird dieses sicherlich selten eingesetzt, für unsere Zwecke sehe ich da allerdings Bedarf. So könnte man auch weitere Userrollen hinzufügen und für das Schreiben auch Co-Autoren bestimmen. Durch ein gut umgesetztes Revisionsmanagement im Frontend, welches dann auch ein Versionsprotokoll beinhalten sollte, ist das dann auch relativ gefahrlos und offen anwendbar.

Letzenendes kann man mit dieser Lösung auch eine profesionelle, in dem Fall dann geschlossene, Produktionsebene schaffen, die aus WordPress ein an die jeweiligen Zwecke angepasstes Redaktionssystem macht. Das Einstellen von Text Links und Fotos obliegt jeweils anderen Mitarbeitern, man sich über die Ergänzungsfunktion über Notizen und Aufgabenstellung austauscht, diese dann auch gleich noch mal per Mail oder RSS verteilen und die Freigabe eines Artikel ist nur durch einen Redaktionsleiter möglich.

Wie ihr seht, ist das Konzept bereits weit voran geschritten.
Was ist eure Meinung dazu?

Nachtrag:
Erlaube das Registrieren im Blog und setze die „New User Default Role“ auf „Author“ und schon kann jeder wer möchte, sich registrieren und selbst einen Artikel als Autor schreiben. Dem Redaktionsleiter obliegt es dann den Artikel auf dem Hauptblog zu veröffentlichen. Was will man mehr?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.