Aufgabenverwaltung mit WordPress – GTD Methode

Aufgaben und Tasks online verwalten und das möglichst auf einem eigenen Server und unter einer stabilen, ausgereiften, freien Software, das wäre eine ideale Lösung. Und dann soll es auch noch die GTD-Methode sein (= Getting Things Done, Selbstmanagement-Methode von David Allen)

WordPress bringt schon vieles mit

Volltextsuche, jede Menge Erweiterungen und stabil läuft es seit Jahren. Leider existiert kein fertiges Plugin, das ein GTD Tool (z.B. Thinking Rock) ersetzen könnte. Die „GTD“ relevante Struktur muss in den meisten (mir bekannten) Tools selbst gepflegt werden, da kann man auch ein paar Kategorien in WordPress anlegen.

Die „GTD-WP“ Idee ist übrigens nicht neu, aber die Umsetzung und Ansicht in Thinking Rock hat die Frage aufgeworfen, ob eine ähnliche Darstellung auf einfachem Wege in WordPress möglich ist. Du hast „Java Webspace“? Nehm lieber Jira oder ein anderes gutes Bug / Issue / Project Tracking Tool. Dir stehen nur php und MySql zu Verfügung, dann solltest Du weiterlesen.

WordPress unterstützt beliebig tiefe Kategoriestrukturen

Und Artikel lassen sich dann diesen Kategorien zuordnen. Eine Kategorie ist z.B. die Inbox, weitere Kategorien können über- oder untergeordnete Projekte oder andere Strukturen abbilden.

In meinem Beispiel gibt es drei Hauptkategorien, diese werden in einem Ausklappmenu auf der Frontpage angezeigt:

In der (Kategorie) Inbox wird gesammelt, der Status eines Tasks wird über eine farbliche Markierung dargestellt (zu erledigen, oder in Arbeit = grün, inaktiv = rot, undefiniert = keine Markierung), diese Markierung ist auch schon in der Inbox verfügbar, schließlich gibt es Tasks, deren Notwendigkeit man sich schon beim Sammeln sicher ist:

Soll ein Task einsortiert werden, wird er im Backend einfach einer anderen Kategorie zugeordnet:

Der Status eines Tasks wird als Schlagwort ebenfalls im Backend zugeordnet (es wäre so auch möglich mehr als 3 Stati zu etablieren), die Zuordnung und Ausgabe der farblichen Kennzeichnung erfolgt durch ein geeignetes Plugin:

Im Frontend wird der Status eines Tasks in das Aufklappmenu durchgereicht:

Die Unterkategorien weisen auch im eingeklappten Zustand (durch entspr. farbliche Markierung) aus, ob sie aktive Tasks enthalten.:

Tasks erhalten ihren Status übrigens links vom Text, Unterkategorien rechts, somit kann man beide Sturkturelemente in längeren Listen leicht unterscheiden und die zahlreichen Tasks in „Projekten“ kommen aufgeräumt daher.

Unterkategorien die keine Tasks enthalten, werden ausgeblendet und im Frontend nicht in der Struktur angezeigt, jedoch nicht gelöscht. (Eine Funktion, die mir bei zahlreichen Tools fehlt, entweder geht die Struktur verloren, so z.B. bei einfacher Kategorisierung durch Verschlagwortung, oder es werden immer alle Kategorien / Projekte angezeigt, auch wenn sie noch / wieder „leer“ sind).

Klickt man im Menu auf eine Kategorie, werden alle enthaltenen Einträge angezeigt:

Bei Klick auf eine Unterkategorie nur die entsprechend zugehörigen:

Klickt man im Menu oder der Kategorieauflistung auf einen Task, wird dieser geöffnet und im Menu farblich markiert:

Möchte man im Frontend nach dem Status filtern klickt man im unteren Bereich des Menus einfach auf das zugehörige Symbol, im Anschluss werden in der Artikelauflistung alle Tasks mit (nur) diesem Status angezeigt:

Weitere Attribute (Termin, Bearbeiter, Kosten, Dauer etc.) lassen sich z.B. über benutzerdefinierte Felder realisieren und einmal in WordPress / MySQL gespeichert, auf jede erdenkliche Weise weiter verwenden:

Weitere Merkmale der GTD Methode und deren Umsetzung in WordPress:

  • Kontextlisten (z.B. mit dem „Werkzeug“ (Telefon, Auto, Mail usw.) im Fokus), lassen sich über Schlagworte, geeignete Kategoriestruktur oder benutzerdefinierte Felder erreichen (ein Artikel kann auch mehreren Kategorien zugeordnet werden)
  • da sich die Anzahl der Menus und zugehörigen Widgets im Frontend frei festlegen lässt, ist es möglich mehrere „Perspektiven“ / Kontexte schon auf der Startseite zu unterstützen, so kann man z.B. schnell nachsehen, was für ein bestimmtes Projekt zu tun ist oder was man in einem Aufwasch alles mit dem Auto oder Telefon erledigen kann
  • die Vorlage- oder Wiedervorlage von Tasks lässt sich über das Publizierungsdatum von WordPress etablieren
  • Termine lassen sich über eines der zahlreichen Terminplugins pflegen
  • Listen und Ziele lassen sich in Kategorien pflegen (ein Artikel kann auch mehreren Kategorien zugeordnet werden)
  • die Zugehörigkeit zu einem (oder mehreren) größeren Ziel(en) kann durch Schlagworte gekennzeichnet, oder in benutzerdefinierten Feldern abgelegt werden (ein Artikel kann auch mehreren Kategorien zugeordnet werden)
  • es können problemlos mehrere Inboxen gepflegt werden
  • Kategorien für Referenzmaterialien lassen sich einfach anlegen und verwalten

Mein Tool befreit mich vom Druck hunderter oder tausender Tasks

In der ersten Ansicht gibt es erstmal nix zu tun, da im Menu im eingeklappten Modus kein Status angezeigt wird. Die Top-Ten Tasks, also die, die wirklich wichtig sind, werden auf der Startseite von WordPress angezeigt (im Backend unter Artikel bearbeiten / erstellen –> „Publizieren“ –> Diesen Artikel auf der Startseite halten). Sind sie erledigt, fliegen sie da wieder raus.

Dann entscheide ich mich in welchem Kontext ich etwas tun möchte exemplarisch: „Privat“ oder im „Job“? Es gibt immer noch nichts zu tun, wie entspannend 😉 .

Erst durch Wahl einer Kategroie sehe ich, ob aktive Tasks vorhanden sind:

Und siehe da, die meisten Unterkategorien enthalten in den letzten Monaten inaktive / nicht dringende / nicht wichtige Tasks (alles rot 😉 ). Wichtig: Abgearbeitete Tasks sofort als erledigt markieren und in einem regelmäßigen Zyklus einen Blick auf die inkativen Tasks werfen.

GTD mit WordPress

Das Beispiel ist mit WordPress Version 3.1.4 entstanden, wichtig für die Plugins und für einige Funktionen, die in älteren WordPress Versionen nicht out of the box vorhanden sind.

Wer sich ein wenig mit WordPress und PHP auskennt, kann innerhalb kürzester Zeit „sein“ System zur Aufgabenverwaltung realisieren. Besonders bequem: Erweiterungen und neue Anforderungen lassen sich meist durch geeignete Plugins oder nur wenig programmatische Änderung umsetzen.

WordPress bietet neben den beschriebenen Fuktionen eine ausgereifte Dokumenten / Medienverwaltung, sammelt Links, bringt eine Benutzerverwaltung mit, läuft dank PHP bei den meisten „Webhostern“ und wartet bei der Pflege der Tasks mit einer durchdachten GUI auf. Außerdem ist es möglich Tasks direkt im Frontent zu editieren.

Wer WordPress für Website Projekte „redaktionell“ einsetzt, benötigt jetzt nur noch ein Backend und theoretisch lässt sich das auch als Instanz in einer Multisite Konfiguration realisieren.

Ich arbeite seit ca. 6 Monaten mit einer angepassten WordPress Instanz und es läuft wunderbar. Zugriff ist jederzeit mit PC / iPhone / iPAD (und anderen Geräten) möglich, meine Daten liegen relativ sicher auf meinem Server (und nicht irgendow in der Cloud), es ist kostenlos und läuft solange ich mag.

Die Schritte für GTD mit WordPress

Plugins installieren, Konfiguration und ein wenig „Programmieren“ :

1. Authenticator (WordPress Frontend mit Login-Daten absichern)

2. Hold your color (Task-Status farbig anzeigen)

  • Anlage von Status und Statusfarben
  • aktiv (grün), inaktiv (rot), erledigt (blau)
    • Anlage von Statuswerten: WordPress Admin MenuArtikel → Colors

    • Anlage von Statusfarben: WordPress Admin Menu Einstellungen Hold your color
  • neue Funktion für die Rückgabe eines Statuselements nach postID (ausprogrammieren)
    • Dazu die bestehende Funktion “the_colors“ in der Datei “hold-your-color.php“ kopieren, umbenennen und um den Parameter ID erweitern, diese ID wird dann zur Abfrage des “colors“ Attributes verwendet (man kann natürlich auch die bestehende Funktion anpassen).Die Datei kann z.B. in WordPress mit dem Editor angepasst werden.WordPress Admin → Plugins → EditorNach Start des Editors oben rechts das Plugin und anschließend die Datei auswählen:

      function the_colors2($bull = true, $before = null, $separator = ‚ ‚, $after = null, $pid = null) {


      global $post;

      /*$post->ID durch $pid ersetzen)*/
      $colors = wp_get_post_terms($pid, ‚colors‘);
      ……..

       

    • In der gleichen Datei die Text-Ausgabe von “no colors” unterdrücken (sonst wird ohne Status diese Zeichenkette ausgegeben)

      Im Else Part der o. a. Funktionen die Ausgabe von “no colors“ unterdrücken (entfernen, auskommentieren oder um alternative Funktionalität erweitern):

      else {

      /*echo __(‚No colors‘, ‚hyc‘);*/

      Nach dem Editieren die Änderungen speichern. Die neue Funktion wird im nächsten Plugin angezogen um innerhalb des Menus den Status von Einträgen (auch in den Kategorien) anzuzeigen.

3. Moo Collapsing Categories (Kategorien in Frontend als Baum anzeigen)

  • Anpassung Formatierung in den Plugin Einstellungen
    • Kategorien und Sub-Kategorien fett, Posts normal
  • Integration „Hold your color“ zur Anzeige des Status
    • die Integration des Plugin „Hold your Color“ in das Plugin „Moo Collapsing Cetagories ist die einzige Stelle, die ein wenig Mehraufwand bedeutet, um das Beispiel einfach nachvollziehbar zu machen, muss der Inhalt der Plugin-Datei durch den Inhalt der folgenden Textdatei getauscht werden:collapscatlist.txt
    • mit dem Plugin Editor die Plugin Datei collapscatlist öffnenWordPress Admin → Plugins → EditorNach Start des Editors oben rechts das Plugin und anschließend die Datei auswählen:Den Text im Eingabefenster mit dem Text aus der Datei collapscatlist.txt ersetzen, dann die Datei speichern. (mit einem geeigneten Tool wie textdiff oder winmerge kann man den Inhalt der Originaldatei mit dem der neuen Datei vergleichen). Die Änderunegn sind weder umfangreich noch kompliziert, um sie hier zu erklären aber ein bischen „ungünstig verteilt“.

      Anmerkung: die zugewiesenen Status-Farben und die Ausgabe der Statusmarkierungen innerhalb des aufklappbaren Menu sind im Beispielprojekt hardcodiert, um das Beispiel nachzubauen muss die Farbe für den Status „aktiv“ auf #00fc26 konfiguriert sein.

4. Advanced Custom Fields (benutzerdefinierte Felder erstellen)

  • Container und Felder anlegen

Theme installieren: zBench

  • Breite Wrapper (1200px) und Sidebar (460px) anpassen (damit die Überschriften der Artikel nicht umbrechen)
  • Head anpassen, Überschrift verkleinern
  • Integration „Hold your color“ und der „customfields“ auf Artikel und Listenebene (ausprogrammieren)
    • das ist optional, auf Artikelebene in der Theme Datei single.php mit dem Theme Editor unterhalb von <h2 class=“title title-single“>
      <?php the_title(); ?>
      die folgenden Zeilen ergänzen: <?php the_colors($bull = true, $before = null, $separator = ‚ ‚, $after = null); ?>
      <?php echo “ Termin: „; ?><?php echo get_field(‚termin‘); ?>
      und in der Datei index.php mit dem Theme Editor die Zeile

      <h2 class=“title<?php if(is_sticky()) {echo “ sticky-h2″;} ?>“><a href=“<?php the_permalink(); ?>“
      title=“<?php printf( esc_attr__(‚Permalink to %s‘, ‚zbench‘), the_title_attribute(‚echo=0‘) ); ?>“><?php
      the_title(); ?></a></h2>

      vor dem Tag </h2> durch die Zeichenkette

      <?php the_colors($bull = true, $before = null, $separator = ‚ ‚, $after = null); ?>

      ergänzen. Erst dann wird im einzelnen Artikel und in Auflistungen der Status angezeigt.

Kategorien anlegen:

  • Kategorien und Unterkategorien wie geünscht anlegen
  • Inbox für „Neues und Ideen“
  • automatischer email Import nach Inbox

Anlage eines neuen Eintrages:

  • Artikel wie gewohnt erstellen
  • sammeln und ggf. einem Projekt, einer Kontextliste einem Ziel zuordnen
  • Status über „Hold your color“ Feld-eingeben
  • publizieren
VN:F [1.9.22_1171]
Rating: 5.0/5 (6 votes cast)
Aufgabenverwaltung mit WordPress - GTD Methode, 5.0 out of 5 based on 6 ratings