/* */ '; endif; return $flex_slider; } } /* |-------------------------------------------------------------------------- | Helper Function : Extract Attachment ID's from gallery shortcode |-------------------------------------------------------------------------- */ if ( !function_exists( 'ut_extract_gallery_images_ids' ) ) { function ut_extract_gallery_images_ids() { global $post; $content = get_the_content(); $pattern = get_shortcode_regex(); preg_match( "/$pattern/s", $content, $match ); if( isset( $match[2] ) && ( "gallery" == $match[2] ) ) { $atts = $match[3]; $atts = shortcode_parse_atts( $match[3] ); $ut_gallery_images = isset( $atts['ids'] ) ? explode( ',', $atts['ids'] ) : get_children( 'post_type=attachment&post_mime_type=image&post_parent=' . $post->ID .'&order=ASC&orderby=menu_order ID' ); return $ut_gallery_images; } } } /* |-------------------------------------------------------------------------- | Link Post |-------------------------------------------------------------------------- */ if( !function_exists('post_format_link_content') ) { function post_format_link_content() { echo get_post_format_link_content(); } } if( !function_exists('get_post_format_link_content') ) { function get_post_format_link_content() { /* needed variables */ $urlfound = false; $url = ''; $content = get_the_content(); /* retrieve meta data */ $value = ut_return_meta('postformat'); /* check if there is an url inside the meta */ if( !empty($value['_format_link_url']) ) { $url = $value['_format_link_url']; /* set url found */ $urlfound = true; } /* there is no url inside the meta , lets check the content*/ if( !$urlfound ) { /* try to fetch a link */ $url = post_format_url_grabber($content); } return ( !empty($url) ) ? ut_add_http($url) : '#' ; } } /* |-------------------------------------------------------------------------- | Video Post |-------------------------------------------------------------------------- */ if( !function_exists('post_format_video_content') ) { function post_format_video_content() { echo get_post_format_video_content(); } } if( !function_exists('get_post_format_video_content') ) { function get_post_format_video_content( $args = array() ) { /* needed variables */ $videofound = false; $embed = false; /* retrieve meta data */ $value = ut_return_meta('postformat'); /* check if there is a video shortcode inside the meta */ if( !empty($value['_format_video_embed']) ) { $value = $value['_format_video_embed']; /* set video found */ $videofound = true; } /* we have a meta value , lets check its syntax and return it */ if( $videofound ) { if ( is_numeric( $value ) ) { $video = wp_get_attachment_url( $value ); return do_shortcode( sprintf( '[video src="%s"]', $video ) ); } elseif ( preg_match( '/' . get_shortcode_regex() . '/s', $value ) ) { return do_shortcode( $value ); } elseif ( ! preg_match( '#<[^>]+>#', $value ) ) { return do_shortcode("[video $value]"); } else { return $value; } } } } /* |-------------------------------------------------------------------------- | Audio Post |-------------------------------------------------------------------------- */ if( !function_exists('post_format_audio_content') ) { function post_format_audio_content() { echo get_post_format_audio_content(); } } if( !function_exists('get_post_format_audio_content') ) { function get_post_format_audio_content() { /* needed variables */ $audiofound = false; $shortcode = false; /* retrieve meta data */ $value = ut_return_meta('postformat'); /* check if there is an audio shortcode inside the meta */ if( !empty($value['_format_audio_embed']) ) { $value = $value['_format_audio_embed']; /* set audio found */ $audiofound = true; } /* there is no audio shortcode inside the meta, so lets check the regular content */ if( !$audiofound ) { $content = get_the_content(); $audio = preg_match_all( '#\[audio\s*.*?\]#s', $content, $matches ); /* check if we have found an audio shortcode */ if( !empty($matches[0][0]) ) { $value = $matches[0][0]; $shortcode = true; } } if ( is_numeric( $value ) ) { $audio = wp_get_attachment_url( $value ); return do_shortcode( sprintf( '[audio src="%s"]', $audio ) ); } elseif ( preg_match( '/' . get_shortcode_regex() . '/s', $value ) ) { return do_shortcode( $value ); } elseif ( ! preg_match( '#<[^>]+>#', $value ) && !$shortcode ) { return do_shortcode("[audio $value]"); } else { return $value; } } } /* |-------------------------------------------------------------------------- | helper function for image post |-------------------------------------------------------------------------- */ if( !function_exists('get_post_format_image_url') ) { function get_post_format_image_url() { /* needed variables */ $imagefound = false; $image = ''; /* retrieve meta data */ $value = ut_return_meta('postformat'); /* check if we have a image inside the default wordpress meta */ if( !empty($value['_format_image']) ) { return $value['_format_image']; } /* there is no image inside the meta, so lets check the post has image childs */ if( !$imagefound ) { /* get an array of images */ $images = get_children( array( 'post_parent' => get_the_ID(), 'post_type' => 'attachment', 'post_mime_type' => 'image', 'numberposts' => -1 ) ); /* run trough images and send back the first image we have found */ foreach( $images as $image ) { /* we check if we are an image already aotherwise set it*/ if( !$imagefound ) { return $image->guid; } } } /* there are still no images, so lets check for linked images inside the content */ if( !$imagefound ) { $content = get_the_content(); $image = post_format_url_grabber($content); if( !empty($image) ) { return $image; } } } } /* |-------------------------------------------------------------------------- | helper function to extract image url |-------------------------------------------------------------------------- */ if(!function_exists('post_format_url_grabber')) { function post_format_url_grabber( $string ) { $imageurl = !empty( $string ) ? preg_match_all('@((https?://)?([-\w]+\.[-\w\.]+)+\w(:\d+)?(/([-\w/_\.]*(\?\S+)?)?)*)@', $string , $match) : ''; return isset($match[0][0]) ? ut_add_http($match[0][0]) : ''; } } if(!function_exists('ut_add_http')) { function ut_add_http($url) { if (!preg_match("~^(?:f|ht)tps?://~i", $url)) { $url = "http://" . $url; } return esc_url_raw($url); } } if(!function_exists('ut_remove_http')) { function ut_remove_http($url) { $url = preg_replace("~^(?:f|ht)tps?://~i" , '' , $url); return $url; } } /* |-------------------------------------------------------------------------- | helper function : turn embed url into regular url for lightbox |-------------------------------------------------------------------------- */ if ( !function_exists( 'ut_generate_lightbox_url' ) ) { function ut_generate_lightbox_url($url) { $spliturl = explode("/", $url); if(substr_count($url,"youtube")) { $finalurl = 'http://www.youtube.com/watch?v='.$spliturl[4]; } elseif(substr_count($url,"vimeo")) { $finalurl = 'http://vimeo.com/'.$spliturl[4]; } else { $finalurl = 'unknown'; } return $finalurl; } } /* |-------------------------------------------------------------------------- | grab exif data from wp attachment |-------------------------------------------------------------------------- */ if ( !function_exists( 'ut_grab_exif_data' ) ) { function ut_grab_exif_data($post_ID ) { global $id, $post; if ( !isset($post_ID) || '' == $post_ID ) return FALSE; $meta = wp_get_attachment_metadata($post_ID, FALSE); $exif = ''; /* timestamp */ if ( $meta['image_meta']['created_timestamp'] ) : $exif .= '
  • '; $exif .= '' . __( 'Photo Taken: ', 'unitedthemes' ) . ''; $exif .= date( "d-M-Y H:i:s", $meta['image_meta']['created_timestamp'] ); $exif .= '
  • '; endif; /* copyright */ if ( $meta['image_meta']['copyright'] ) : $exif .= ''; endif; /* photographer */ if ( $meta['image_meta']['credit'] ) : $exif .= '
  • '; $exif .= '' . __( 'Credit: ', 'unitedthemes' ) . ''; $exif .= $meta['image_meta']['credit'] ; $exif .= '
  • '; endif; /* Image Title */ if ( $meta['image_meta']['title'] ) : $exif .= '
  • '; $exif .= '' . __( 'Title: ', 'unitedthemes' ) . ''; $exif .= $meta['image_meta']['title']; $exif .= '
  • '; endif; /* Caption */ if ( $meta['image_meta']['caption'] ) : $exif .= '
  • '; $exif .= '' . __( 'Caption: ', 'unitedthemes' ) . ''; $exif .= $meta['image_meta']['caption']; $exif .= '
  • '; endif; /* Camera */ if ( $meta['image_meta']['camera'] ) : $exif .= '
  • '; $exif .= '' . __( 'Camera: ', 'unitedthemes' ) . ''; $exif .= $meta['image_meta']['camera']; $exif .= '
  • '; endif; /* Focal Length */ if ( $meta['image_meta']['focal_length'] ) : $exif .= '
  • '; $exif .= '' . __( 'Focal Length: ', 'unitedthemes' ) . ''; $exif .= $meta['image_meta']['focal_length']; $exif .= __( 'mm', 'unitedthemes' ); $exif .= '
  • '; endif; /* Aperture */ if ( $meta['image_meta']['aperture'] ) : $exif .= '
  • '; $exif .= '' . __( 'Aperture: ', 'unitedthemes' ) . ''; $exif .= $meta['image_meta']['aperture']; $exif .= '
  • '; endif; /* ISO */ if ( $meta['image_meta']['iso'] ) : $exif .= '
  • '; $exif .= '' . __( 'ISO: ', 'unitedthemes' ) . ''; $exif .= $meta['image_meta']['iso']; $exif .= '
  • '; endif; /* Shutters Speed*/ if ( $meta['image_meta']['shutter_speed'] ) : $exif .= '
  • '; $exif .= '' . __( 'Shutter Speed: ', 'unitedthemes' ) . ''; $exif .= number_format($meta['image_meta']['shutter_speed'], 3); $exif .= __( 'seconds', 'unitedthemes' ); $exif .= '
  • '; endif; return $exif; } } if ( !function_exists( 'ut_simple_exif' ) ) { function ut_simple_exif($post_ID ) { echo get_ut_simple_exif($post_ID ); } } if ( !function_exists( 'get_ut_simple_exif' ) ) { function get_ut_simple_exif($post_ID ) { return ut_grab_exif_data($post_ID ); } } if ( !function_exists( 'ut_get_attachment_id_from_url' ) ) { function ut_get_attachment_id_from_url( $attachment_url = '' ) { global $wpdb; $attachment_id = false; // If there is no url, return. if ( '' == $attachment_url ) return; // Get the upload directory paths $upload_dir_paths = wp_upload_dir(); // Make sure the upload path base directory exists in the attachment URL, to verify that we're working with a media library image if ( false !== strpos( $attachment_url, $upload_dir_paths['baseurl'] ) ) { // If this is the URL of an auto-generated thumbnail, get the URL of the original image $attachment_url = preg_replace( '/-\d+x\d+(?=\.(jpg|jpeg|png|gif)$)/i', '', $attachment_url ); // Remove the upload path base directory from the attachment URL $attachment_url = str_replace( $upload_dir_paths['baseurl'] . '/', '', $attachment_url ); // Finally, run a custom database query to get the attachment ID from the modified attachment URL $attachment_id = $wpdb->get_var( $wpdb->prepare( "SELECT wposts.ID FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta WHERE wposts.ID = wpostmeta.post_id AND wpostmeta.meta_key = '_wp_attached_file' AND wpostmeta.meta_value = '%s' AND wposts.post_type = 'attachment'", $attachment_url ) ); } return $attachment_id; } }