lolitaloco

Event listing (php)

Mar 3rd, 2012
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.18 KB | None | 0 0
  1.  
  2. global $post;
  3. $myposts = get_posts($eventsArgs);
  4. $array = array();
  5.  
  6. foreach($myposts as $post) : setup_postdata($post);
  7.     $values = array(
  8.         'date' => get_post_meta($post->ID, 'event_date_start', true),
  9.         'name' => get_the_title(),
  10.         'url' => get_permalink()
  11.     );
  12.     array_push($array, $values);                       
  13. endforeach;
  14.  
  15. $i = 0;
  16. foreach($array as $item) {
  17.    
  18.     /* Item values */
  19.     $eventName = $item['name'];
  20.     $eventDate = $item['date'];
  21.     $eventURL = $item['url'];
  22.    
  23.     /* Comparison values */
  24.     $thisDate = substr($array[$i]['date'], 0,-2);
  25.     $nextDate = substr($array[$i+1]['date'], 0,-2);
  26.     $prevDate = substr($array[$i-1]['date'], 0,-2);
  27.    
  28.     /* Rewrite dates */
  29.     $timestamp = strtotime($eventDate);
  30.     $humanDate = ucwords(strftime("%B %Y",strtotime(date("F Y", $timestamp))));
  31.     $ISOFullDate = date("Y-m-d", $timestamp);
  32.     $ISOPartialDate = date("Y-m", $timestamp);
  33.    
  34.     /* Print it */
  35.     if($thisDate !== $prevDate) { echo "<h3>$humanDate</h3><ul data-eventsmonth='$ISOPartialDate' class='eventsGroup'>"; }
  36.     echo "<li data-eventdate='$ISOFullDate'> <a href='$eventURL' title='$eventName'>$eventName</a> ($ISOFullDate)</li>";
  37.     if($thisDate !== $nextDate) { echo "</ul>"; }
  38.    
  39.     ++$i;
  40. }
Add Comment
Please, Sign In to add comment