Obtén información EXIF detallada sobre el archivo de medios.
Calificaciones
Última actualización
June 27, 2024
Versión
1.09
Instalaciones activas
200
Exif Details

Obtén información EXIF detallada sobre el archivo de medios.

Selección de datos

  • ARCHIVO
  • EXIF
  • GPS

Plugin hermano

  • En el siguiente plugin, puedes usar las etiquetas generadas por este plugin.
  • Exif Caption.

¡Gracias especiales al proveedor de datos de prueba!

Ejemplo usando el fragmento de código 1 y 3

Ejemplo de cómo usar el gancho de filtro y el gancho de acción

  • Ejemplo del fragmento de código 1
/** ================================================== * Sample snippet 1 * * The original filter hook('exif_details_data'), * which changes the display when retrieving an Exif and storing it in metadata. * The following changes the display of the shooting date and time. * * @param array $exifdatas exifdatas. * @param int $id id. */ function exif_details_change( $exifdatas, $id ) { if ( array_key_exists( 'DateTimeOriginal', $exifdatas ) ) { $shooting_date = str_replace( ':', '-', substr( $exifdatas['DateTimeOriginal'], 0, 10 ) ); $shooting_time = substr( $exifdatas['DateTimeOriginal'], 10 ); $exifdatas['DateTimeOriginal'] = $shooting_date . $shooting_time; } return $exifdatas; } add_filter( 'exif_details_data', 'exif_details_change', 10, 2 );
  • Ejemplo del fragmento de código 2
/** ================================================== * Sample snippet 2 * * Retrieve the post metadata and add the date and time of the shooting to the title of the media page. * Execute the original action hook('exif_details_update') in the function. * * @param array $title title. * @param int $id id. */ function media_title( $title, $id ) { $datetime = null; if ( is_attachment() ) { do_action( 'exif_details_update', $id ); $exifdatas = get_post_meta( $id, '_exif_details', true ); if ( ! empty( $exifdatas ) && array_key_exists( 'DateTimeOriginal', $exifdatas ) ) { $datetime = ' Date:' . $exifdatas['DateTimeOriginal']; } } return $title . $datetime; } add_filter( 'the_title', 'media_title', 10, 2 );
  • Ejemplo del fragmento de código 3
/** ================================================== * Sample snippet 3 * * When adding new media, insert the processed data into the caption. * Use the original action hook ('exif_details_update') with function. * * @param array $metadata metadata. * @param int $id id. */ function media_caption( $metadata, $id ) { $mime_type = get_post_mime_type( $id ); if ( in_array( $mime_type, array( 'image/jpeg', 'image/tiff' ) ) ) { do_action( 'exif_details_update', $id ); $exifdatas = get_post_meta( $id, '_exif_details', true ); if ( ! empty( $exifdatas ) ) { $camera = null; $f_number = null; $s_speed = null; $iso = null; $date = null; $googlemap = null; if ( array_key_exists( 'Model', $exifdatas ) ) { $camera = 'Camera:' . $exifdatas['Model']; } if ( array_key_exists( 'ApertureFNumber', $exifdatas ) ) { $f_number = 'F-number:' . $exifdatas['ApertureFNumber']; } if ( array_key_exists( 'ExposureTime', $exifdatas ) ) { $s_speed = 'Shutter speed:' . $exifdatas['ExposureTime']; } if ( array_key_exists( 'ISOSpeedRatings', $exifdatas ) ) { $isodata = json_decode( $exifdatas['ISOSpeedRatings'] ); if ( is_array( $isodata ) ) { $iso = 'ISO:' . $isodata[0]; } else { $iso = 'ISO:' . $isodata; } } if ( array_key_exists( 'DateTimeOriginal', $exifdatas ) ) { $date = 'Date:' . $exifdatas['DateTimeOriginal']; } if ( array_key_exists( 'latitude_dd', $exifdatas ) && array_key_exists( 'longtitude_dd', $exifdatas ) ) { $googlemap = '<a href="https://www.google.com/maps?q=' . $exifdatas['latitude_dd'] . ',' . $exifdatas['longtitude_dd'] . '">Google Map</a>'; } $caption = sprintf( '%1$s %2$s %3$s %4$s %5$s %6$s', $camera, $f_number, $s_speed, $iso, $date, $googlemap ); $caption = rtrim( $caption ); $caption = preg_replace( '/\s(?=\s)/', '', $caption ); $media_post = array( 'ID' => $id, 'post_excerpt' => $caption, ); wp_update_post( $media_post ); } } return $metadata; } add_filter( 'wp_generate_attachment_metadata', 'media_caption', 10, 2 );
Instalaciones activas
200
Probado hasta
6.6
Te puedes descargar este plugin para utilizarlo en tu instalación autoalojada de WordPress.