Das Fullcalendar-Plugin für jQuery ist ein voll konfigurierbarer Kalender mit Schnittstellen für den Abruf von Daten von einem Server.
Ausserdem können Events von einem bstehenden Google-Kalender abgefragt werde.,
Im einem meiner letzten Projekte, habe ich nach einer Alternative zum WP Kalender-Widget gesucht.Dabei bin ich auf dieses Plugin gestossen.
Die Abfrage der Daten erfolgt im JSON-Format.
Hier der PHP-Teil um die Event-Objekte zu erstellen und an den Kalender zu schicken:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| /**
* wp-posts.php to deliver json objects
*/
$posts = get_posts ('');
$eventArr = array();
foreach($posts as $post) {
//build event object
$event = new stdClass ();
$event->id = $post->ID;
$event->title = $post->post_title;
$event->start = date("Y-m-d",strtotime($post->post_date));
$event->comments = $post->comment_count;
$event->url = get_permalink ($post->ID);
$event->allDay = false;
$eventArr[] = $event;
}
echo json_encode($eventArr); |
Der Code für die Anzeige im Browser ist sehr kurz und simpel:
1 2 3 4 5 6 7 8
| $(document).ready(function() {
$('#fullcalendar').fullCalendar({
editable: true,
aspectRatio: 2,
timeFormat: '',
events: "/wp-posts.php"
});
}); |
Bei Bedarf kann man natürlich auch weitere Datenquellen einbinden und z.B. eigene Veranstaltungen eintragen.
Das Ergebnis sieht man hier: http://www.es-dev.de/wp-cal.php
Das Modul gibt es hier:
http://arshaw.com/fullcalendar/