Die WordPress Exif-Meta-Daten

WordPress speichert beim Upload von Dateien einige Daten in den Meta Daten zur Daten - die Metadaten. Wenn es sich um Bilder handelt und diese Dateien Exif-Daten enthalten, dann werden auch dazu einige Werte ausgelesen und die kann man nutzen. Wie man diese bekommt und nutzt wird hier gezeigt.

WordPress speichert beim Upload von Dateien einige Daten in den Meta Daten zur Daten - die Metadaten. Wenn es sich um Bilder handelt und diese Dateien Exif-Daten enthalten, dann werden auch dazu einige Werte ausgelesen und die kann man nutzen. So zum Beispiel als Zusatzinformationen zum Bild, wie in einem Photoblog beispielsweise, oder aber auch um Umsetzungen auf Grund von bestimmten Werten zu realisieren.

Egal was und wie ihr das tun wollt, anbei eine kleine Funktion, die das Auslesen der Exif-Daten übernimmt. Wem das nicht ausreicht, der bedient sich einer eigenen Funktion, die wesentlich mehr Daten ausließt und in einem älteren Artikel nachzulesen ist.

Die zweite Funktion fb_simple_exif() ist für die direkte Ausgabe erstellt und nutzt die erste Funktion, die die Werte zum benutzen zurück gibt.


// grab exif data from wp attachment
function grab_exif_data_from_wp($post_ID, $debug = FALSE) {
	global $id, $post;
	
	if ( !isset($post_ID) || '' == $post_ID )
		return FALSE;
	
	$meta = wp_get_attachment_metadata($post_ID, FALSE);
	
	$return = '';
	
	if ( $meta['image_meta']['created_timestamp'] )
		$return .= date( "d-M-Y H:i:s", $meta['image_meta']['created_timestamp'] );
	if ( $meta['image_meta']['copyright'] )
		$return .= $meta['image_meta']['copyright'];
	if ( $meta['image_meta']['credit'] )
		$return .= $meta['image_meta']['credit'];
	if ( $meta['image_meta']['title'] )
		$return .= $meta['image_meta']['title'];
	if ( $meta['image_meta']['caption'] )
		$return .= $meta['image_meta']['caption'];
	if ( $meta['image_meta']['camera'] )
		$return .= $meta['image_meta']['camera'];
	if ( $meta['image_meta']['focal_length'] )
		$return .= __( '· Brennweite:', FB_GREYFOTO_TEXTDOMAIN )
		           . ' ' . $meta['image_meta']['focal_length'] 
		           . __( 'mm', FB_GREYFOTO_TEXTDOMAIN );
	if ( $meta['image_meta']['aperture'] )
		$return .= $meta['image_meta']['aperture'];
	if ( $meta['image_meta']['iso'] )
		$return .= $meta['image_meta']['iso'];
	if ( $meta['image_meta']['shutter_speed'] )
		$return .= number_format($meta['image_meta']['shutter_speed'], 2) . ' ' . __( 'seconds', FB_GREYFOTO_TEXTDOMAIN );
	
	if ($debug) {
		ob_start();
		var_dump($meta);
		$return = ob_get_clean();
	}
	
	return $return;
}

function fb_simple_exif($post_ID, $debug) {
	
	$echo = grab_exif_data_from_wp($post_ID, $debug);
	
	if ( $echo && '' != $echo )
		echo $echo;
}

Comments are closed.