<?php
/**
 * Event List system.
 */
 
/**
 * Sets up our Events custom post type.
 */
function pbd_events_init() {
    
// Labels.
    
$labels = array(
        
'name' => 'Events',
        
'singular_name' => 'Event',
        
'add_new' => 'Add New',
        
'add_new_item' => 'Add New Event',
        
'edit_item' => 'Edit Event',
        
'new_item' => 'New Event',
        
'view_item' => 'View Event',
        
'search_items' => 'Search Events',
        
'not_found' => 'No events found.',
        
'not_found_in_trash' => 'No events found in Trash.'
    
);
    
    
// Register the post type.
    
register_post_type('events', array(
        
'labels' => $labels,
        
'public' => true,
        
'supports' => array('title''editor''custom-fields''comments'),
        
'has_archive' => true
    
));
    
    
// Event tag labels.
    
$eventLabels = array(
        
'name' => 'Event Tags',
        
'singular_name' => 'Event Tag',
        
'search_items' => 'Search Event Tags',
        
'popular_items' => 'Popular Event Tags',
        
'all_items' => 'All Event Tags',
        
'edit_item' => 'Edit Event Tag',
        
'update_item' => 'Update Event Tag',
        
'add_new_item' => 'Add New Event Tag',
        
'new_item_name' => 'New Event Tag Name'
    
);
    
    
// Event tags.
    
register_taxonomy('event_tags''events', array(
        
'label' => 'Event Tags',
        
'labels' => $eventLabels
    
));
}
add_action('init''pbd_events_init');

/**
 * Add Event Date before the description on single post pages.
 */
function pbd_add_event_info($content) {
    if ( 
'events' == get_post_type() ) :
    
        
// Get the date of the event in a nicer-to-read format.
        
global $post;
        
$date get_post_meta($post->ID'Date'true);
        
$date date_create($date);
        
$date date_format($date'jS F, Y');
        
        
// Add the message before the post.
        
$content '<p class="events-info"><strong>Event Date</strong>: '$date .'</p>' $content;
    endif;
    
    return 
$content;
}
add_filter('the_content''pbd_add_event_info');

?>