минимизация данных о событиях, отображаемых в Jquery FullCalendar - PullRequest
1 голос
/ 22 февраля 2011

Можно ли минимизировать данные, отображаемые в данный день (с событием) в календаре?Я знаю, что это странная просьба.В частности, я хочу удалить заголовок и время начала ... По сути, если бы я мог просто иметь класс CSS для дней с событиями, или я в порядке с текущим «пузырем», который он показывает сейчас, без дополнительной информации.http://www.seattledesigndistrict.com/events/ - это календарь, с которым я сейчас работаю.Он извлекает данные из пользовательского типа записи WordPress:

<script type="text/javascript">
$(document).ready(function(){
$('#calendar').fullCalendar({
    header: {
        left: 'prev,next ',
        center: 'title',
        right: ''
    },

    weekMode: 'liquid',
    height: 250,
    events: [
        <?php
            $myEvents = get_posts('post_type=event&orderby=title&order=ASC&numberposts=-1');
            $eventString = '';
            foreach($myEvents as $event){
                $eventString .= '{ title: \''.$event->post_title.'\',';
                $eventDate = get_post_meta($event->ID,'event_date',true);
                $dateParts = explode('-',$eventDate);
                $startTime = get_post_meta($event->ID,'starttime',true);
                if($startTime != ''){
                    $startTimeArray = explode(':',$startTime);
                    $makeStart = mktime($startTimeArray[0],$startTimeArray[1],0,$dateParts[1],$dateParts[2],$dateParts[0]);
                } else {
                    $makeStart = mktime(12,0,0,$dateParts[1],$dateParts[2],$dateParts[0]);
                }
                $displayDate = date('c',$makeStart);
                $eventString .= 'start: \''.$displayDate.'\',';
                $endTime = get_post_meta($event->ID,'endtime',true);
                if($endTime != ''){
                    $endTimeArray = explode(':',$endTime);
                    $makeEnd = mktime($endTimeArray[0],$endTimeArray[1],0,$dateParts[1],$dateParts[2],$dateParts[0]);
                    $displayEndDate = date('c',$makeEnd);
                    $eventString .= 'end: \''.$displayEndDate.'\',';
                }
                $eventString .= 'url: \''.$event->guid.'\',';
                $eventString .= 'allDay: false},';                  
            }
            $eventString  = substr($eventString, 0, -1);
            echo $eventString;
        ?>
    ]
})
});
</script>

любая помощь будет принята с благодарностью.

1 Ответ

2 голосов
/ 22 февраля 2011

Используйте крючок eventRender, как описано в документации .Хук предоставляет вам доступ к элементу, используемому для визуализации события.Приведенный ниже код удаляет текст, оставляя поле как есть.

<script type="text/javascript">
$(document).ready(function(){
$('#calendar').fullCalendar({
// your other code here
    eventRender: function(event, element) {
        $(element).
          remove(".fc-event-time"). // the time span in a full calendar event
          remove(".fc-event-title"); // the title span in a full calendar event
    }
})
});
</script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...