Exif Details
Get detailed Exif information about the media file.
Solid choice
Exif Details is a solid plugin choice in 2026, with a few things worth checking first. It runs on 300+ sites, is rated 5/5 and was last updated 1 month ago, and scores 72/100 on our health check.
- Tested with the latest WordPress (7.1)
- Small user base (300+ active installs)
- Very few reviews so far
How does it stack up?
Side-by-side on installs, updates, ratings & supportDaily downloads
Download spikes usually follow a new release — each site that auto-updates counts as a download.
Rankings
Where Exif Details stands todayWordPress.org search rankings
Live position in the plugin search, top 100| Keyword | Position |
|---|---|
| exif | #3 |
| media library | >100 |
| photos | >100 |
Version adoption
Share of active sites per release.
Rating breakdown
★★★★★★★★★★ 5 from 1 reviews
About Exif Details
From the official readme · v1.11Description
Get detailed Exif information about the media file.
Data Selection
- FILE
- EXIF
- GPS
Sibling plugin
- Can use the tags generated by this plugin in the following plugin.
- Exif Caption.
Special Thanks! Test data provider
Sample using snippet 1 & 3
Sample of how to use the filter hook and action hook
- Sample snippet 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 );
- Sample snippet 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 );
- Sample snippet 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 );
Installation
- Upload
exif-detailsdirectory to the/wp-content/plugins/directory - Activate the plugin through the ‘Plugins’ menu in WordPress
Changelog
Initial release.
[1.11] 2025/06/11
- Fix – Issues related to data acquisition.
[1.10] 2025/04/17
- Fix – Loading the management screen.
1.09
Changed json_encode to wp_json_encode.
1.08
Supported WordPress 6.4.
PHP 8.0 is now required.
1.07
PHP 8.0 or higher is now supported.
1.06
Supported WordPress 5.6.
For developers
Is this your plugin? Show off the numbers.
Add a live badge to your site, docs or GitHub README. It updates on its own — no account needed.
Best Exif Details alternatives
All exif plugins →FAQ
Exif Details: quick answers
Straight answers, pulled from live WordPress.org data.
Live data from WordPress.org · checked Sep 28, 2026
Is Exif Details free?
Yes. Exif Details is free to download and use from the official WordPress.org plugin directory.
Is Exif Details safe to use in 2026?
Exif Details is a solid plugin choice in 2026, with a few things worth checking first. It runs on 300+ sites, is rated 5/5 and was last updated 1 month ago, and scores 72/100 on our health check.
How many websites use Exif Details?
Exif Details is active on 300+ WordPress websites and has been downloaded 8,169 times since it launched in May 2020. It was downloaded 128 times in the last 30 days.
Does Exif Details work with WordPress 7.1?
Yes. The developer has tested Exif Details up to WordPress 7.1.2, the latest release. It requires WordPress 4.7 or newer.
What PHP version does Exif Details need?
Exif Details requires PHP 8.0 or higher. Most hosts run PHP 8.x today, so it works on any modern WordPress hosting.
When was Exif Details last updated?
The latest version, 1.11, was released on August 16, 2026 (1 month ago).
Who makes Exif Details?
Exif Details is developed and maintained by Katsushi Kawamori.
What are the best alternatives to Exif Details?
The most popular alternatives to Exif Details are Meow Lightbox (10K+ installs), Image Rotation Repair (7K+ installs) and Image Rotation Fixer (1K+ installs).
Powered by PageForge
Want thousands of pages that rank like these? Build them in an afternoon.
This directory runs on the same engine as PageForge. Turn any spreadsheet, CSV or API into thousands of fast, SEO-ready WordPress pages — with schema, internal links and AI-written copy baked in.
- CSV, Google Sheets & API data sources
- AI content, schema & internal links per page
- Works with Elementor, Gutenberg, Yoast & Rank Math
- Free on WordPress.org — no credit card


