MR Event: ein Plugin für die Verwaltung von Ereignissen
MR Event ist ein WordPress-Plugin, das es erlaubt, schnell und einfach Beiträge mit zusätzlichen Datums- und Zeitangaben zu versehen, und diese in der Sidebar des Blogs als eine Liste “bevorstehender Ereignisse” anzeigen zu lassen.
Beispiele für Ereignisse sind z.B. Veranstaltungen, Sendetermine oder Geburtstage.
Die Datums- und Zeitangaben werden auf der "Beitrag erstellen" Seite in einem zusätzlichen Element, das MR Event anzeigt, zum Beitrag hinzugefügt und als Metaangabe zum Beitrag in der Datenbank abgespeichert.
MR Event basiert auf RS Event von Robert Sargant.
Kompatibilität: Das Plugin sollte mit allen Versionen von 2.0x bis 2.8 funktionieren.
- Download
- Installieren
- Benutzen
- Anpassen
- Anpassen für Fortgeschrittene
- Anwendungsbeispiele
- Entwicklung
- Lizenz
- Kommentare
Download
Installieren
Folgende Schritte führen zur erfolgreichen Installation:
- Kopiere die Dateien
mr-event.php, mr-event-de_DE.mo und mr-event-de_Sie.moin das Plugin-Verzeichniswp-content/plugins/ - Aktiviere MR Event auf der
Plugins-Seite der Admin-Oberfläche.
Benutzen
![]()
Um Ereignisse hinzuzufügen, muss beim Erstellen oder Bearbeiten eines Beitrags einfach ein Datum im Abschnitt MR Event der Sidebar eingegeben werden.
Die Felder Tag, Monat und Jahr sind verpflichtend, während die Felder Stunde und Minute optional sind. Wenn jedoch bei der Formatierung der Ausgabe Zeitangaben verwendet werden, wird bei Daten ohne Zeitangaben 0 Uhr ausgegeben.
Anpassen
MR Event kann über eine eigene Optionen-Seite im Admin-Menü angepasst werden.
Die verschiedenen Einstellmöglichkeiten bedeuten:
-
Titel (title):
Der Titel bei Verwendung als Widget. Default ist
Bevorstehende Ereignisse. -
HTML-Ausgabe (event_html):
Die Angaben zur Formatierung der einzelnen Ereignisse. Es gibt eine Reihe von Variablen, die zur Anpassung der Anzeige benutzt werden können:
- %URL% — die URL des Beitrags zu diesem Ereignis
- %DATE% — das Datum des Ereignisses, formatiert nach den Einstellungen unter
date_format - %TIME% — die Zeit des Ereignisses, formatiert nach den Einstellungen unter
time_format - %TITLE% — der Titel des Ereignisses
Doppelte Anführungszeichen (
") in derevent_htmlkönnen zu Problemen führen. Anstatt sie direkt einzugeben, kann man entweder\"oder"verwenden.Vorgegeben ist die Formatierung
"%DATE%: <a href="%URL%">%TITLE%</a>". -
“Keine Ereignisse” Meldung (no_events_msg):
Die Ausgabe, wenn es keine Ereignisse in der vorgegebenen Zeitspanne gibt.
Vorgegeben ist
Keine bevorstehenden Ereignisse. -
Datumsformat (date_format):
Der Stil, in dem das Datum formatiert wird. Hinweise zu den möglichen Formatangaben finden sich im PHP Handbuch im Abschnitt date().
Vorgegeben ist
"j M". -
Zeitformat (time_format):
Ähnlich wie Datumsformat, nur für die Zeit.
Vorgegeben ist
"H:i". -
Zeitspanne (timespan):
Die maximale Anzahl von Tagen, für die Ereignisse angezeigt werden sollen.
Vorgegeben ist
365. -
Zeige bis zu __ Ereignisse (max_events):
Die maximale Anzahl von Ereignissen, die angezeigt werden sollen.
Es ist auch möglich, die
Zeitspanneauf einen sehr hohen Wert zu setzen (z.B.36500für 100 Jahre) und mit Hilfe des Wertes für max_events die Anzahl der angezeigten Ereignisse unabhängig vom zeitlichen Abstand zu begrenzen.Vorgegeben ist
0(“zeige alle”). -
Nach Datum gruppieren? (group_by_date):
Wenn diese Option auf Nein (false) gestellt ist, wird jedes Ereignis gesondert als individuelles Listenelement
<li>ausgegeben.Wenn diese Option auf Ja (true) gestellt ist, dann wird dasDatumsformatfür jeden Beitrag geprüft. Ereignisse mit dem gleichenDatumsformatwerden gemeinsam in einem Listenelement<li>gruppiert, wobei das Datum und die dazugehörigen Beiträge durch einen Zeilenumbruch<br />getrennt werden.Durch das Setzen unterschiedlicherDatumsformatekönnen die Ereignisse nach unterschiedlichen Datumseigenschaften gruppiert werden, z.B. “Y” um nach Jahren zu gruppieren oder “W Y” um nach Wochen zu gruppieren.Voreingestellt ist
false. -
Jahr ignorieren? (ignore_year):
Wenn diese Option auf Ja (true) gestellt ist, wird die Jahresangabe ignoriert und Ereignisse werden unabhängig vom Jahr gelistet.
Voreingestellt ist
false.
Anpassen für Fortgeschrittene
Für die folgenden Einstellmöglichkeiten sind geringe PHP-Kenntnisse nötig, wobei das Kopieren des Codes in die Templatedateien aber die Hauptarbeit ist.
Die Funktion mr_event_list erwartet ein einzelnes optionales Argument, ein assoziatives Array der verschiedenen Optionen, die geändert werden sollen. Alle Arrayelemente sind optional.
Um die Ausgabe anzupassen, muss mr_event_list folgendermaßen aufgerufen werden:
<li><h2>Veranstaltungen</h2> <?php $mr_event_arg = array ( "timespan" => 28, "date_format" => "jS M 'y", "time_format" => "g:i A", "group_by_date" => true, "event_html" => "<a href='%URL%'>%TITLE% (%TIME%)</a>", "max_events" => 0, "ignore_year" => 0 ); mr_event_list($mr_event_arg); ?> </li>
Die Schlüsselnamen des Array, die zur Anpassung genutzt werden können, stehen oben in Klammern nach den Bezeichnungen der Optionen.
Die Funktion mr_event_list_qf erwartet Angaben zu den verschiedenen Optionen, die geändert werden sollen, im Query-Format sowie als zweiten optionalen Parameter ein Format für die HTML-Ausgabe. Alle Angaben sind optional. Beispielcode:
<li><h2>Veranstaltungen</h2> <?php mr_event_list_qf('timespan=14&date_format=d. M&ignore_year=1', '<a href="%URL%">%TITLE% (%DATE%)</a>') ?> </li>
Anwendungsbeispiele
Eine Liste von Geburtstagen der nächsten zwei Wochen mit einem Datumsformat wie 1. Okt.:
mr_event_list_qf('timespan=14&date_format=j. M.&ignore_year=1');

Eine Liste der nächsten zehn Veranstaltungen, sofern sie spätestens in einem Jahr sind:
mr_event_list_qf('max_events=10');

Eine Liste der Sendetermine der Lieblingssendung in den nächsten 50 Tagen:
mr_event_list_qf('timespan=50&date_format=j.n.&time_format=G:i', '%DATE%, %TIME% Uhr: <a href="%URL%">%TITLE%</a>');

Entwicklung
-
MR Event 1.07 — 30. Juni 2009
- Probleme mit dem Datumsformat korrigiert
-
MR Event 1.05 — 24. Juli 2008
- Anpassung an Versionierung in WP 2.6
-
MR Event 1.04 — 11. April 2008
- Fehlerkorrektur: Ausgabe no_event-text
-
MR Event 1.03 — 9. April 2008
- Prüfung auf WP 2.5-Kompatibilität
- Anpassung an Änderungen in der Adminoberfläche von WordPress 2.5
- Korrekturen beim erzeugten Widget
-
MR Event 1.02 — 12. Juli 2006
- Korrektur eines Tippfehlers, der dazu führte, dass die Minutenangaben bei einer Stundenangabe von 0 Uhr nicht korrekt verarbeitet wurden.
-
MR Event 1.01 — 15. Juni 2006
- Kleinere Vereinfachungen am Code
-
MR Event 1.0 — 17. Mai 2006
- Vollständige Lokalisation inkl. deutscher Sprachdateien
- Optionsseite im Adminbereich
- Neue Funktion mr_event_list_qf mit Übergabe der Parameter im Queryformat
- Neue Option ignore_year
-
Original: RS Event 0.6 — 16. April 2006
- Autor Robert Sargant (www.sargant.com)
Lizenz
MR Event wird wie das Original unter den Bedingungen der Creative Commons Attribution-NonCommercial-ShareAlike 2.0 England & Wales License veröffentlicht.
Hallo Matthias,
ich habe die gleichen Probleme mit dem Plugin.
Kannst DU in etwa abschätzen wann Du dazu kommst?
Gruß
Michael
Fehler gefunden und korrigiert: Download der neuen Version
Danke für das Update, hat auch mir geholfen mit WP 2.8 und falschem Datum
Grüsse, Jörn
Super, danke, Matthias!
Hallo Matthias,
ich habe da ein kleines Problem mit der Anzeige der Uhrzeit. Wenn ich in MR Event die Uhrzeit 15Uhr angebe steht bei mir 13 Uhr.. kann ich das irgendwie anpassen ? Nimmt dein Plugin die Zeit von meiner Datenbank oder von wo?
Für Hilfe wäre ich sehr Dankbar.
Gruß
Ronny
@Ronny: Tut mir leid, ist mir noch nicht untergekommen. Könnte an der Einstellung der Zeitzone liegen.
Das Plugin scheint sehr interessant zu sein und ist vielleicht genau das, wonach ich suche.
Mein Anliegen: Artikeln über kommende Konzerten in einer Kneipe mit einem Datum zu versehen. Diese sollen dann nur auf der Seite “Termine” angezeigt werden ( was durch Kategorien realisierbar ist) und als vollwertige Artikeln fungieren.
Das scheint mir auf den ersten Blick alles mit Hilfe dieses Plugins machbar zu sein.
Der Knackpunkt ist jetzt, dass die Artikeln ins Archiv wandern sollen, wenn das Konzert stattfand.
Was passiert eigentlich mit den Events, wenn ich verstreichen, bleiben die weiterhin in der Liste stehen?
Vielleicht ist alles nur mit kleinen Anpassungen möglich oder muss ich tiefer rein?
Über Lösungsvorschläge würde ich mich sehr freuen!
Alles Gute,
Paul
Termine, die verstrichen sind, tauchen in der Liste nicht mehr auf.
Super plugin, danke dafür!
Eine Anregung habe ich noch: Ich benutze das plugin als Geburtstagskalender. Doch leider hat man nicht immer die zukünftigen Geburtstage im Blick, ein nachträgliches Gratulieren ist angesagt. Hilfreich wäre daher eine Option, die z.B. die Termine der letzen x Tage weiter in der Liste hält, dafür vielleicht kursiv dargestellt. Oder als eigene Rubrik “verpasste Termine”. Was meinst Du?
Und noch eine Frage in die Runde: Ich werde eine beträchtliche Zahl von Geburtstagen verwalten. Was mache ich mit den ganzen Beiträgen, damit sie mir nicht ständig über den Weg laufen? Als Entwurf lassen? Publizieren und die Sichtbarkeit einschränken? Oder kann ich die irgenwo verstecken?
Danke im voraus!
Nachtrag:
Auch wenn das Jahr ignoriert wird, die Uhrzeit wird nicht ignoriert. Damit zum Beispiel ein Geburtstag auch den ganzen Tag auf der Seite angezeigt wird, muss ich als Uhrzeit 23:55 Uhr auswählen.
S. http://www.mr-entwicklung.de/cms/wordpress/plugins/mr-event/comment-page-2/#comment-5591
Wird in der nächsten Version mit berücksichtigt.
Hallo Matthias,
dein Plugin ist genau das, wonach ich schon lange gesucht habe. Leider tritt bei mir das Problem mit immer noch auf (jedes event hat das Datum von heute). Die neueste Version habe ich natürlich installiert.
Kannst du oder jemadn anderes mit weiterhelfen?
Viele Grüße
Jan
oh hups, jetzt gehts auf einmal…
Das freut mich
Hallo,
vielen Dank für die Informationen auf der Seite. Dein Anwendungsbeispiel mit den Terminen “Datum, Konzert” z.B. ist genau das, was ich machen möchte. Leider habe ich nicht richtig kapiert wie ich das hinkriege. Ich habe wahrscheinlich zu wenig Ahnung von WordPress. Muss ich die von die angegebenen Zeilen z.B. in die “mr_event_list_qf” einfügen ? Wenn ja wo genau kommen die hin. Ich bekomme nur fatale Fehlermeldungen. Vielleicht kannst du mal das ganz konkrete Beispiel mit dem Konzert und der Ausstellung angeben. Das wäre supernett.
Vielen Dank im Voraus !
Jan
Die Dokumentation sagt eigentlich alles. Die Termine werden im Backend unter
MR-Eventeingegeben und mitmr_event_list_qf();in einer Templatedatei ausgegeben.Hallo,
ich setzte Mr. Event auf http://www.muk-giessen.de (Mittlere Spalte: Programm) ein und habe das Problem, dass immer der heutige Termin nicht mehr angezeigt wird. Er verschwindet zu früh aus der Liste. An welcher Stelle im Code kann man diese Grenze anpassen?
Herzlichen Dank
Jan
S. meinen Kommentar vom 7. Oktober 2009
Es wäre hilfreich, wenn es das Plugin hier zum Download gäbe http://wordpress.org/extend/plugins/, damit man innerhalb des WordPress Backends über Updates automatisch informiert würde.
Das stimmt. Leider ist die Lizenz nicht kompatibel, so dass das nicht geht.
Hallo,
eine super Sache dieses Plugin.
Ich suche zusätzlich nach einer Möglichkeit die verschiedenen Veranstaltungen auch nach PLZ zu sortieren. Gibt es dafür auch Plugin’s oder könnte man dafür dieses “aufbohren” ?
Danke
Oliver
Ein Plugin ist mir ad hoc nicht bekannt. Dieses Plugin hier könnte man natürlich entsprechend erweitern. Da man dafür ein zusätzliches benutzerdefiniertes Feld braucht, ist es leider nicht mit einer Änderung getan.
Das Eingabefeld für Events taucht ja beim Erstellen von Seiten auf. Gibt es eine Möglichkeit, mit Seiten statt Artikeln verknüpfte Events ebenfalls mit ausgeben zu lassen?
Hallo,
kurze Frage zum Plugin: Können auch Seiten als Event klassifiziert werden, damit diese in der Eventliste ausgegeben werden? Mit Posts funktioniert das wunderbar, allerdings müsste ich Seiten als Event kennzeichnen. Die Custom Fields werden ja bei Seiten bereits angelegt, ich bekomme sie lediglich nicht in der Eventliste angezeigt.
Können Sie mir freundlicherweise einen Tipp geben, wie ich zusätzlich zu den Posts auch Seiten auslesen kann?
Besten Dank!
Seiten als Event: Ist leider nicht ohne Weiteres möglich. In allen Datenbankabfragen müsste die einschränkende Bedingung
ANDentfernt werden.post_type = 'post'
Durch das Update auf 2.9 scheint wieder ein ähnliches Problem wie mit dem Update auf 2.8 aufzutreten.
Auf meiner Homepage kannst dus dir vielleicht mal anschauen wenn du Zeit hast.
Ich sehe nichts Auffälliges? Das Problem beim Update auf 2.8. war ja, dass das Erstellungsdatum anstelle des Termins angezeigt wurde. Das scheint hier nicht der Fall…
Das ist ja strange: Aus irgend einem Grund hat er einfach die Daten in der Datenbank verändert.
Ich nehme also alles zurück: Dein Script hat keinen Fehler und läuft super mit 2.9
Da bin ich aber beruhigt