2013-11-13 3 views
0

Я создаю плагин Wordpress, в котором администратор может добавлять события. Посетители могут видеть календарь (fullcalendar), где они должны видеть события. Однако он не читает строку json, которая хранит всю информацию. Строка выглядит нормально: [{"title": "Evenement01", "start": "2013-11-15"}, {"title": "Testevenemn12", "start": "2013-11-22"}] ,Fullcalendar не читает json

Ниже моей JSON-feed.php код:

<?php 
global $wpdb; 

$rst_events_array = array(); 
$rst_get_events = $wpdb->get_results(" 
SELECT * 
FROM wp_rst_events 
"); 
foreach ($rst_get_events as $val){ 
    $rst_events_array [] = array(
     'title' => $val->rst_event_name, 
     'start' => $val->rst_event_date 
    ); 
} 
echo json_encode($rst_events_array); 
?> 

А вот мой JQuery:

jQuery('#rst-calendar').fullCalendar({ 
     events: 'json-feed.php' 

    }); 

Заранее спасибо

ответ

0

У меня была такая же проблема с Wordpress и ее необходимо было добавить;

header("Content-Type: application/json; charset=UTF-8"); 
    echo event::jsonCalendarEvent($id); 
    exit; 

JSON очень специфичен, и любые символы после того, как ваше эхо убьет его на стороне клиента.

0

Вы должны использовать формат даты/времени, как указано в документации :

Дата/время, начинается событие. При указании объектов события для событий или событийных источников вы можете указать строку в формате IETF (например: «ср, 18 окт 2009 13:00:00 EST»), строка в формате ISO8601 (например: «2009-11 -05T13: 15: 30Z ") или временную метку UNIX.

Таким образом, в вашем случае:

events: [ 
      { 
       "title":"Evenement01", 
       "start":"2013-11-15T13:15:30Z" 
      }, 
      { 
       "title":"Testevenemn12", 
       "start":"2013-11-22T13:15:30Z" 
      } 
     ] 

Посмотрите here. Если вы хотите, чтобы мероприятие длилось весь день, вы должны установить свойства allDay: true.

Смежные вопросы