WordPress Plugin für Trainingstagebuch

Mit Hilfe dieser Erweiterung für WordPress lassen sich Ihre Trainingsdaten von trainingstagebuch.org leicht in Ihre Webseite integrieren. Dazu nutzen Sie entweder das Widget für die Sidebar oder den integrierten Shortcode [trainingstagebuch]. Hier finden Sie Beispiele.

Den Plugin können Sie hier herunterladen.

Installation

Nachdem Sie den Plugin entweder über WordPress installiert oder manuell heruntergeladen und unter wp-content/plugins entpackt haben, aktivieren Sie diesen im Admin-Bereich unter Plugins.

Anschließend navigieren Sie unter Einstellungen zu Trainingstagebuch und geben Ihren Benutzernamen und Passwort für trainingstagebuch.org ein. Nachdem Sie gegebenenfalls noch Änderungen an den Optionen vorgenommen haben, klicken Sie auf Speichern.

Fehlerbehebung

Nachdem Sie Ihren Benutzernamen und Ihr Passwort eingegeben haben, erscheint ein Bereich Status, der Auskunf über die Verbindung zum API-Server von trainingstagebuch.org und die Funktionstüchtigkeit des eingebauten Daten-Caches gibt. In beiden Fällen sollte ein OK erscheinen.

Erscheint hingegen Fehler hinter einem der beiden oder gar beiden Einträgen, kann dies folgende Gründe haben:

  • im Falle der Verbindung zum API-Server prüfen Sie Ihren eingegebenen Benutzernamen und das Passwort. Sind diese nicht korrekt, kann keine Verbindung hergestellt werden.
  • erlaubt ihre Installation von PHP keine Verbindungen zu anderen Servern (allow_url_fopen) und ist zusätzlich kein cURL installiert, können ihre Trainingsdaten nicht geladen werden, da keine Verbindung zum trainingstagebuch.org-Server hergestellt werden kann. Richten Sie eine von beiden Möglichkeiten ein.
  • im Falle des Daten-Caches sollten Sie die Rechte des Verzeichnisses api/cache unter wp-contents/plugins/trainingstagebuch prüfen. Diese müssen für den Benutzer unter dem der Webserver (genauer PHP) läuft les- und schreibbar sein. Unter Linux/MacOS behebt man dies bspw. mit einem chmod 777 cache, wobei cache das o.g. Verzeichnis darstellt.

Falls Sie andere Fehlermeldungen erhalten oder allgemein Probleme mit dem Plugin haben, hinterlassen Sie bitte einfach einen Kommentar, damit ich Ihnen behilflich sein kann.

Widget

Das Widget bietet die Möglichkeit die hier gezeigten Banner und JavaScript-Schnipsel ohne weiteres beispielsweise in Ihrer Sidebar zu platzieren. Dazu können Sie im Admin-Bereich unter Design – Widgets das Trainingstagebuch-Widget so oft Sie mögen in die Sidebar bewegen und konfigurieren.

Hier finden Sie Beispiele zur Verwendung des Widgets.

Shortcode

Der mächtige Shortcode [trainingstagebuch] bietet Ihnen Zugriff auf die API und somit auf Ihre Daten bei trainingstagebuch.org. Fügen Sie diesen bestückt mit ein paar Attributen an die Stelle in Ihrem Beitrag oder Ihrer Seite ein, an der die Trainingstagebuch-Daten erscheinen sollen. Damit Sie nicht so viel Tippen müssen, wurde die abkürzende Schreibweise [tb] eingeführt.

Hier finden Sie Beispiele zur Verwendung des Shortcodes.

Attribute

Folgende Attribute können mit dem Shortcode verwendet werden. Mit dem Attribute type können die angezeigten Daten ausgewählt und mit den weiteren Attributen angepasst werden.

Attribut Mögliche Werte Beschreibung
type workouts
workout_year
workout_month
workout_week
workout
sports
material
routes
zones
borg
weather
wind
plan
plan_year
plan_month
plan_week
daily
daily_year
daily_month
daily_week
Enthält den gewünschten API-Aufruf. Enthält der Name des Aufrufs year muss zusätzlich der Parameter year angegeben werden. Ähnliches gilt im Fall von month und year bzw. month sowie week mit year bzw. week.
year, month, week, id Zahlen Enthält – falls nötig – die Werte für Jahr, Monat, Woche sowie ID der Trainingsdaten.
start, end Zahlen Enthält den Start- bzw. Endwert für Trainingseinheiten.
exclude summary_all
summary_count
summary_duration
summary_distance
table_head
number
date
duration
heartrate
speed
borg
Blendet bestimmte Informationen aus. Dies wirkt zusätzlich zu den Einstellungen auf der Konfigurationsseite des Plugins.

Mit Hilfe dieser Attribute lassen sich auch kompliziertere Anfragen wie Zeige mir die ersten sieben Trainingseinheiten vom August 2008 realisieren. Somit können Sie in einem Artikel über Ihren letzten Marathon genau die Trainingseinheiten selektieren, die Sie im Vorfeld absolviert haben.

Wünsche und Weiterentwicklung

Dieser Plugin, wie jedes gute Projekt, lebt von den Rückmeldungen der Benutzer. Sollten Sie Fehler gefunden haben, eine neue Funktion gerne in der nächsten Version sehen wollen oder Hilfe bei der Nutzung des Plugins benötigen, schreiben Sie mir entweder eine E-Mail oder hinterlassen Sie einen Kommentar.

Tatsächlich hat der Plugin noch nicht die magische Version 1.0 erreicht, so dass in den nächsten Monaten noch etliche Verbesserungen eingebaut werden.

Informationen für Entwickler

Enthalten in diesem WordPress Plugin ist eine Implementation der API für trainingstagebuch.org in PHP5; insbesondere PHP4 reicht nicht aus. Zusätzlich findet sich ein leicht zu konfigurierender Daten-Cache, der Antworten der API speichert und somit verhindert, dass mit jedem Rendern des Shortcodes eine Anfrage an die API einher geht; standardmäßig werden gleiche Anfragen nur alle 24 Stunden durchgeführt.

Aktuell funktionieren alle Lese-Zugriffe. Die Schreib-Zugriffe, wie beispielsweise das Hochladen einer HRM-Datei oder das Anlegen neuer Trainingspläne oder -einheiten, sind nicht implementiert. Für letztere Funktionalität fehlte mit Hinblick auf diesen Plugin die Notwendigkeit.

Sollten Sie die PHP-Implementation der API weiter entwickeln, würde ich mich freuen, wenn diese Änderungen diesem Plugin ebenfalls zur Verfügung stehen würden. Schreiben Sie mir doch einfach eine E-Mail, damit wir Details klären können.

17 Kommentare ↓

  • Ralf sagt:
    Hallo, das Plugin lässt sich bei mir leider nicht aktivieren:

    Das Plugin konnte nicht aktiviert werden, da es einen fatalen Fehler verursacht hat.
    Parse error: syntax error, unexpected '{' in [...]/wp-content/plugins/trainingstagebuch/trainingstagebuch.php on line 148

    WordPress-Version ist 2.7.1 (d).

    MfG, Ralf.

  • Hallo Ralf,
    der Plugin setzt aktuell voraus, dass mindestens PHP5 installiert ist; insbesondere mit PHP4 erhältst du diesen Fehler. Falls du die Möglichkeit hast, wäre nun der Zeitpunkt gekommen dein PHP zu aktualisieren ;)
  • Ralf sagt:
    Hallo Christian,

    vielen Dank für die rasche Info! Hat funktioniert. .php war noch der Version 4 zugeordnet. Nach dem Zuordnen zu Php5 klappt nun alles! :P

  • Guten Morgen Ralf,
    perfekt! Vermutlich ist PHP4 bei vielen Hosting-Firmen noch Standard, aber immerhin toll, wenn sich das ändern lässt.
  • Nils sagt:
    Hi, zur Not kann man sich ja auch selber die CGI-Version von PHP im Webspace ablegen… Siehe hier.

    Gruß
    Nils

  • Joe sagt:
    Hey, ist es irgendwie möglich immer nur die Daten der letzten Trainingseinheit in einem Artikel von WP anzeigen zu lassen.
  • Hi Joe,
    das geht mit dem Shortcode

    [tb type=workouts end=1 exclude=summary]

    Damit wir nur die Einheit angezeigt, ohne die Zusammenfassung all deiner Einheiten.

  • Georg sagt:
    Hallo, ersteinmal vielen Dank für die Mühe welche Du Dir mit trainingstagebuch.org machst – bin kurz davor eine Spende abzusenden!
    Leider funktioniert das PlugIn bei mir nicht.
    Es erscheint im Beitrag: “Fehler: Benutzername oder Passwort nicht gesetzt.”
    Ich habe aber Dein PlugIn in WordPress aktiviert, dann auf “bearbeiten” geklickt:
    Bearbeite trainingstagebuch/trainingstagebuch.php (aktiv)

    nach unten gerollt und hier wo die XXXXXXXXX sind mein Usernamen und Password eingetragen.

    # Identifier fuer den Benutzername und Passwort
    define(‘OPTION_TRAININGSTAGEBUCH_USERNAME’, ‘XXXXXXXXXXX’);
    define(‘OPTION_TRAININGSTAGEBUCH_PASSWORD’, ‘XXXXXXXXXXX’);
    # Identifier fuer grosses/kleines BORG-Bild
    define(‘OPTION_TRAININGSTAGEBUCH_BORG_IMAGE’, ‘trainingstagebuch_borg_image’);

    Dann auf “Daten aktualisieren” aber leider verschwindet der Fehler nicht :-(

    Nutze WordPress 2.8.6. mit neustem PHP. :-(

    Würde mich über Hilfe sehr freuen!

  • Georg sagt:
    Ich nochmal: Habe den Fehler gefunden. Bin nicht über “Einstellungen” gegangen. Habe alles neu installiert. Auch das PlugIn und habe nun versucht das über “Einstellungen” zu konfigurieren. Leider erhalte ich nun den Fehler das er nicht auf die API zugreifen kann :-( Password und Username habe ich schon geDoubleChecked. :-(
    Es kommt der Fehler:
    Fehler: Konnte SSO-ID nicht ermitteln.
    Was bedeutet das?
  • Axi sagt:
    Kann es sein, dass dieses Plugin mit der neuesten Version von WordPress (3.2.1) nicht mehr kompatibel ist? Weder in den Settings noch beim Einbinden funktioniert dieses Plugin. Anfang der Meldung:
    isSetUp()) return $cache; return $trainingstagebuch; } } /** * Diese Klasse dient als Schnittstelle zur API von Trainingstagebuch.org. Hier *……
  • Hallo Axi,
    ich habe es erneut getestet und der Plugin funktioniert mit der aktuellen Version von WordPress (3.3.1) einwandfrei. Ich hoffe, Du kannst das Problem bei dir beheben.
  • Hi,

    ich muss auch sagen die API ist sehr geil. Leider habe ich es Geschaft bisher nur für wenige male die Grafik zu laden. Überall scheinen die Zugriffe zu funktionieren, und ich habe wie gesagt auch schon die Grafik ein paar mal gesehen von meinen Daten. Warum wird diese nicht immer erstellt. Oder liegt dies am 1&1 Server. Muss ich vielleicht noch irgend etwas chachen? Wenn es stabil funktioniert sind mir solche hilfreichen Tools auch immer etwas Geld wert.

    Habe es wieder gefunden wie es funktioniert. Sobald ich auf das Bild klicke und mich einlogge, erscheint auf meiner Webseite die Daten. Wenn ich allerdings mich wieder ausloge, erscheint wieder kein Bild.

  • Stefan Kumli sagt:
    Hi,
    kann das von Christian mit dem einloggen bestätigen. Offenbar funktioniert der Login-Prozess aus dem PlugIn heraus nicht (mehr). Gibt es jemals ein Update?
  • Hallo Stefan,
    dies ist kein Problem des Plugins, das mit einem Update behoben werden könnte, sondern liegt schlicht an den Einstellungen, die Du unter Privatsphäre auf trainingstagebuch.org aktiv hast. Aktuell hast Du in den Einstellungen zur Privatsphäre auf trainingstagebuch.org “Privat” statt “Öffentlich” eingestellt. Somit können diese Bilder nur von dir selbst und den sog. Motivatoren eingesehen werden. Möchtest Du die Daten auf deinem Blog anzeigen, einfach auf “Öffentlich” wechseln und alles sollte wie erwartet funktionieren.
  • hell-g sagt:
    Einen grossen Wunsch hätte ich: Anzeige der Distanz je Workout und nicht nur in der Summary. Das wäre so klasse!
  • hell-g sagt:
    Habe es selber hinbekommen und km als zusätzliche Angabe im Plugin implementiert.
  • Hi hell-g,
    super, das freut mich! ;-)

Hinterlasse einen Kommentar