-
Notifications
You must be signed in to change notification settings - Fork 20
Home
Bill Erickson edited this page May 19, 2014
·
4 revisions
Add this to your theme/core functionality plugin: add_filter( 'be_events_manager_metabox_override', '__return_true' );
Install the Date and Time Picker extension. Use 'be_event_start' and 'be_event_end' as the start/end meta keys
Install the Location Field extension. Add a location field to your metabox. Then use the following code in your theme:
<?php
$location = get_post_meta( get_the_ID(), 'be_event_location', true );
$location = explode( '|', $location );
echo '<p><img src="http://maps.googleapis.com/maps/api/staticmap?center=' . urlencode( $location[0] ). '&zoom=13&size=600x300&maptype=roadmap&sensor=false" /></p>';
<?php
$start = get_post_meta( get_the_ID(), 'be_event_start', true );
$end = get_post_meta( get_the_ID(), 'be_event_end', true );
// Only a start date
if( empty( $end ) )
$date = date( 'F j, Y', $start );
// Same day
elseif( date( 'F j', $start ) == date( 'F j', $end ) )
$date = date( 'F j Y', $start );
// Same Month
elseif( date( 'F', $start ) == date( 'F', $end ) )
$date = date( 'F j', $start ) . '-' . date( 'j, Y', $end );
// Same Year
elseif( date( 'Y', $start ) == date( 'Y', $end ) )
$date = date( 'F j', $start ) . '-' . date( 'F j, Y', $end );
// Any other dates
else
$date = date( 'F j, Y', $start ) . '-' . date( 'F j, Y', $end );
<?php
$start = get_post_meta( get_the_ID(), 'be_event_start', true );
$end = get_post_meta( get_the_ID(), 'be_event_end', true );
// Same date, same am/pm
if( date( 'F j', $start ) == date( 'F j', $end ) && date( 'a', $start ) == date( 'a', $end ) )
$time = date( 'g:i', $start ) . '—' . date( 'g:i a', $end );
// Same date, different am/pm
elseif( date( 'F j', $start ) == date( 'F j', $end ) )
$time = date( 'g:i a', $start ) . '—' . date( 'g:i a', $end );
// different date
else
$time = date( 'g:i a', $start ) . '—' . date( 'F j, g:i a', $end );
echo '<p class="time">' . $time . '</p>';