[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fga3JHIxpiy_15WZAXHlhpmlYfnmkKbcqOTraSlPMem0":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":18,"download_link":22,"security_score":23,"vuln_count":24,"unpatched_count":24,"last_vuln_date":25,"fetched_at":26,"vulnerabilities":27,"developer":28,"crawl_stats":25,"alternatives":32,"analysis":122,"fingerprints":205},"exif-columns","EXIF Columns","1.0.3","fergu5","https:\u002F\u002Fprofiles.wordpress.org\u002Ffergu5\u002F","\u003Cp>This plugin adds columns to the WordPress built in Media Library for EXIF metadata.\u003C\u002Fp>\n\u003Cp>EXIF columns added are All, Credit, Camera, Focal Length, Aperture, ISO, Shutter Speed, Created Timestamp, Created Date and Copyright.\u003C\u002Fp>\n\u003Cp>This plugin builds on a code snippet on http:\u002F\u002Fwpsnipp.com by Kevin Chard.\u003C\u002Fp>\n","This plugin adds columns to the WordPress built in Media Library for EXIF metadata.",10,2400,100,1,"2013-01-18T10:41:00.000Z","3.5.2","3.5","",[20,21],"exif","media-library","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fexif-columns.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":14,"total_installs":11,"avg_security_score":23,"avg_patch_time_days":29,"trust_score":30,"computed_at":31},30,84,"2026-04-05T18:07:42.133Z",[33,54,66,84,100],{"slug":34,"name":35,"version":36,"author":37,"author_profile":38,"description":39,"short_description":40,"active_installs":41,"downloaded":42,"rating":43,"num_ratings":44,"last_updated":45,"tested_up_to":46,"requires_at_least":47,"requires_php":48,"tags":49,"homepage":52,"download_link":53,"security_score":13,"vuln_count":24,"unpatched_count":24,"last_vuln_date":25,"fetched_at":26},"exif-caption","Exif Caption","3.10","Katsushi Kawamori","https:\u002F\u002Fprofiles.wordpress.org\u002Fkatsushi-kawamori\u002F","\u003Cp>Insert the Exif data to the caption of the media. Also replaced caption of content.\u003C\u002Fp>\n\u003Ch4>Exif\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Insert the Exif data to the caption of the media.\u003C\u002Fli>\n\u003Cli>Insert the Exif data to the alt of the media.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Logs\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Displays the last 100 logs.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Sibling plugin\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Can extend Exif tags with the following plugin.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fexif-details\u002F\" rel=\"ugc\">Exif Details\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How it works\u003C\u002Fh4>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002Fv_1y9PkdYQ4?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n","Insert the Exif data to the caption of the media. Also replaced caption of content.",700,25983,94,3,"2025-11-25T21:51:00.000Z","6.9.4","4.7","8.0",[50,20,21,51],"caption","photos","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fexif-caption\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fexif-caption.3.10.zip",{"slug":55,"name":56,"version":57,"author":37,"author_profile":38,"description":58,"short_description":59,"active_installs":60,"downloaded":61,"rating":13,"num_ratings":14,"last_updated":62,"tested_up_to":46,"requires_at_least":47,"requires_php":48,"tags":63,"homepage":64,"download_link":65,"security_score":13,"vuln_count":24,"unpatched_count":24,"last_vuln_date":25,"fetched_at":26},"exif-details","Exif Details","1.11","\u003Cp>Get detailed Exif information about the media file.\u003C\u002Fp>\n\u003Ch4>Data Selection\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>FILE\u003C\u002Fli>\n\u003Cli>EXIF\u003C\u002Fli>\n\u003Cli>GPS\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Sibling plugin\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Can use the tags generated by this plugin in the following plugin.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fexif-caption\u002F\" rel=\"ugc\">Exif Caption\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Special Thanks! Test data provider\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fprofiles.wordpress.org\u002Fsysbird\u002F\" rel=\"nofollow ugc\">sysbird\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Sample using snippet 1 & 3\u003C\u002Fh4>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FQofOiCf-BPc?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Ch4>Sample of how to use the filter hook and action hook\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Sample snippet 1\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cpre>\u003Ccode>\u002F**  ==================================================\n * Sample snippet 1\n *\n * The original filter hook('exif_details_data'),\n * which changes the display when retrieving an Exif and storing it in metadata.\n * The following changes the display of the shooting date and time.\n *\n * @param array $exifdatas  exifdatas.\n * @param int   $id  id.\n *\u002F\nfunction exif_details_change( $exifdatas, $id ) {\n    if ( array_key_exists( 'DateTimeOriginal', $exifdatas ) ) {\n        $shooting_date = str_replace( ':', '-', substr( $exifdatas['DateTimeOriginal'], 0, 10 ) );\n        $shooting_time = substr( $exifdatas['DateTimeOriginal'], 10 );\n        $exifdatas['DateTimeOriginal'] = $shooting_date . $shooting_time;\n    }\n    return $exifdatas;\n}\nadd_filter( 'exif_details_data', 'exif_details_change', 10, 2 );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cul>\n\u003Cli>Sample snippet 2\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cpre>\u003Ccode>\u002F**  ==================================================\n * Sample snippet 2\n *\n * Retrieve the post metadata and add the date and time of the shooting to the title of the media page.\n * Execute the original action hook('exif_details_update') in the function.\n *\n * @param array $title  title.\n * @param int   $id  id.\n *\u002F\nfunction media_title( $title, $id ) {\n    $datetime = null;\n    if ( is_attachment() ) {\n        do_action( 'exif_details_update', $id );\n        $exifdatas = get_post_meta( $id, '_exif_details', true );\n        if ( ! empty( $exifdatas ) && array_key_exists( 'DateTimeOriginal', $exifdatas ) ) {\n            $datetime = ' Date:' . $exifdatas['DateTimeOriginal'];\n        }\n    }\n    return $title . $datetime;\n}\nadd_filter( 'the_title', 'media_title', 10, 2 );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cul>\n\u003Cli>Sample snippet 3\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cpre>\u003Ccode>\u002F**  ==================================================\n * Sample snippet 3\n *\n * When adding new media, insert the processed data into the caption.\n * Use the original action hook ('exif_details_update') with function.\n *\n * @param array $metadata  metadata.\n * @param int   $id  id.\n *\u002F\nfunction media_caption( $metadata, $id ) {\n    $mime_type = get_post_mime_type( $id );\n    if ( in_array( $mime_type, array( 'image\u002Fjpeg', 'image\u002Ftiff' ) ) ) {\n        do_action( 'exif_details_update', $id );\n        $exifdatas = get_post_meta( $id, '_exif_details', true );\n        if ( ! empty( $exifdatas ) ) {\n            $camera = null;\n            $f_number = null;\n            $s_speed = null;\n            $iso = null;\n            $date = null;\n            $googlemap = null;\n            if ( array_key_exists( 'Model', $exifdatas ) ) {\n                $camera = 'Camera:' . $exifdatas['Model'];\n            }\n            if ( array_key_exists( 'ApertureFNumber', $exifdatas ) ) {\n                $f_number = 'F-number:' . $exifdatas['ApertureFNumber'];\n            }\n            if ( array_key_exists( 'ExposureTime', $exifdatas ) ) {\n                $s_speed = 'Shutter speed:' . $exifdatas['ExposureTime'];\n            }\n            if ( array_key_exists( 'ISOSpeedRatings', $exifdatas ) ) {\n                $isodata = json_decode( $exifdatas['ISOSpeedRatings'] );\n                if ( is_array( $isodata ) ) {\n                    $iso = 'ISO:' . $isodata[0];\n                } else {\n                    $iso = 'ISO:' . $isodata;\n                }\n            }\n            if ( array_key_exists( 'DateTimeOriginal', $exifdatas ) ) {\n                $date = 'Date:' . $exifdatas['DateTimeOriginal'];\n            }\n            if ( array_key_exists( 'latitude_dd', $exifdatas ) && array_key_exists( 'longtitude_dd', $exifdatas ) ) {\n                $googlemap = '\u003Ca href=\"https:\u002F\u002Fwww.google.com\u002Fmaps?q=' . $exifdatas['latitude_dd'] . ',' . $exifdatas['longtitude_dd'] . '\">Google Map\u003C\u002Fa>';\n            }\n            $caption = sprintf( '%1$s %2$s %3$s %4$s %5$s %6$s', $camera, $f_number, $s_speed, $iso, $date, $googlemap );\n            $caption = rtrim( $caption );\n            $caption = preg_replace( '\u002F\\s(?=\\s)\u002F', '', $caption );\n            $media_post = array(\n                'ID'           => $id,\n                'post_excerpt' => $caption,\n            );\n            wp_update_post( $media_post );\n        }\n    }\n    return $metadata;\n}\nadd_filter( 'wp_generate_attachment_metadata', 'media_caption', 10, 2 );\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Get detailed Exif information about the media file.",300,7367,"2025-11-25T21:52:00.000Z",[20,21,51],"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fexif-details\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fexif-details.1.11.zip",{"slug":67,"name":68,"version":69,"author":70,"author_profile":71,"description":72,"short_description":73,"active_installs":60,"downloaded":74,"rating":13,"num_ratings":14,"last_updated":75,"tested_up_to":76,"requires_at_least":77,"requires_php":18,"tags":78,"homepage":82,"download_link":83,"security_score":23,"vuln_count":24,"unpatched_count":24,"last_vuln_date":25,"fetched_at":26},"va-removing-exif","VA Removing Exif","1.0.1","kuck1u","https:\u002F\u002Fprofiles.wordpress.org\u002Fkuck1u\u002F","\u003Cp>Automatically remove all Exif data from the new JPEG images when uploading. Please note that already uploaded images will not be processed. If you want to delete Exif from the already uploaded image, please generate thumbnail image again with “\u003Ca href=\"https:\u002F\u002Fja.wordpress.org\u002Fplugins\u002Fregenerate-thumbnails\u002F\" rel=\"nofollow ugc\">Regenerate Thumbnails\u003C\u002Fa>” etc.\u003C\u002Fp>\n\u003Ch4>How to use\u003C\u002Fh4>\n\u003Cp>Usage is easy. Just activate the plugin. This plugin requires PHP modules of the ImageMagick or GD.\u003C\u002Fp>\n\u003Ch4>Requires\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>WordPress 4.4+\u003C\u002Fli>\n\u003Cli>PHP 5.4+ & ImageMagick or GD modules\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Contribute\u003C\u002Fh4>\n\u003Cp>You can fork the plugin from \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvisualive\u002Fva-removing-exif\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Attention\u003C\u002Fh4>\n\u003Cp>This plugin is intended to save your privacy and should not be used for illegal activity like copyright violations.\u003C\u002Fp>\n","Automatically remove all Exif data from the new JPEG images when uploading.",11441,"2016-12-19T05:40:00.000Z","4.7.32","4.4",[79,80,20,21,81],"attachment","attachments","privacy","https:\u002F\u002Fgithub.com\u002Fvisualive\u002Fva-removing-exif","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fva-removing-exif.zip",{"slug":85,"name":86,"version":87,"author":37,"author_profile":38,"description":88,"short_description":89,"active_installs":90,"downloaded":91,"rating":13,"num_ratings":92,"last_updated":93,"tested_up_to":46,"requires_at_least":47,"requires_php":48,"tags":94,"homepage":98,"download_link":99,"security_score":13,"vuln_count":24,"unpatched_count":24,"last_vuln_date":25,"fetched_at":26},"upload-media-exif-date","Upload Media Exif Date","1.08","\u003Ch4>Register image to media library\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Change to the date\u002Ftime of EXIF information.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Sibling plugin\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fexif-caption\u002F\" rel=\"ugc\">Exif Caption\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fexif-details\u002F\" rel=\"ugc\">Exif Details\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Sample of how to use the filter hook\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Sample snippet\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cpre>\u003Ccode>\u002F**  ==================================================\n * Sample snippet for Upload Media Exif Date\n *\n * The original filter hook('umed_postdate'),\n * Get the date and time from the file name when the date and time cannot be read from the EXIF.\n *\n * @param string $postdate  postdate.\n * @param string $filename  filename.\n *\u002F\nfunction umed_postdate_from_filename( $postdate, $filename ) {\n\n    \u002F* Sample for 20191120_183022.jpg *\u002F\n    $year = substr( $filename, 0, 4 );\n    $month = substr( $filename, 4, 2 );\n    $day = substr( $filename, 6, 2 );\n    $hour = substr( $filename, 9, 2 );\n    $minute = substr( $filename, 11, 2 );\n    $second = substr( $filename, 13, 2 );\n\n    $postdate = $year . '-' . $month . '-' . $day . ' ' . $hour . ':' . $minute . ':' . $second;\n\n    return $postdate;\n\n}\nadd_filter( 'umed_postdate', 'umed_postdate_from_filename', 10, 2 );\n\u003C\u002Fcode>\u003C\u002Fpre>\n","When registering images in the media library, register with the date of EXIF information.",200,6368,2,"2025-11-25T22:09:00.000Z",[95,20,96,21,97],"date","media","time","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fupload-media-exif-date\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fupload-media-exif-date.1.08.zip",{"slug":101,"name":102,"version":103,"author":104,"author_profile":105,"description":106,"short_description":107,"active_installs":108,"downloaded":109,"rating":43,"num_ratings":110,"last_updated":111,"tested_up_to":46,"requires_at_least":112,"requires_php":18,"tags":113,"homepage":118,"download_link":119,"security_score":120,"vuln_count":11,"unpatched_count":24,"last_vuln_date":121,"fetched_at":26},"filebird","FileBird – WordPress Media Library Folders & File Manager","6.5.2","Ninja Team","https:\u002F\u002Fprofiles.wordpress.org\u002Fninjateam\u002F","\u003Cp>\u003Cstrong>Best plugin of all time to categorize WordPress media library with folders.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Let’s organize WordPress media library folders using a drag and drop organizer.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fmedia-folder.ninjateam.org\u002Fcreate\u002F\" rel=\"nofollow ugc\">\u003Cstrong>TEST DRIVE\u003C\u002Fstrong>\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002F1.envato.market\u002FFileBird-Premium\" rel=\"nofollow ugc\">\u003Cstrong>GO PRO (Lifetime License)\u003C\u002Fstrong>\u003C\u002Fa> 💎\u003C\u002Fp>\n\u003Cp>FileBird transforms your WordPress media library with intuitive folder organization, smooth drag & drop, and smart sorting. Locate images faster, easily insert them into Gutenberg blocks, quickly identify and remove unused files.\u003C\u002Fp>\n\u003Cp>The free version allows you to create \u003Cstrong>unlimited main folders\u003C\u002Fstrong> and \u003Cstrong>subfolders\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Cp>📌 \u003Ca href=\"https:\u002F\u002Fninjateam.gitbook.io\u002Ffilebird\u002F\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fninjateam.gitbook.io\u002Ffilebird\u002Fcompare-filebird-free-and-pro\" rel=\"nofollow ugc\">Compare FileBird Free vs Pro\u003C\u002Fa>\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FNjeEbqmMVwU?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Ch3>⚡️ FEATURES\u003C\u002Fh3>\n\u003Cp>FileBird allows you to create virtual folders to \u003Ca href=\"https:\u002F\u002Fninjateam.org\u002Fhow-to-organize-your-wordpress-media-library\u002F\" rel=\"nofollow ugc\">categorize your WordPress media file uploads\u003C\u002Fa>. So when you move files and folders around, it won’t break the permalinks to your images in the page\u002Fpost content.\u003C\u002Fp>\n\u003Cp>With FileBird, you can save time on WP media management, search for any files & folders, sort them out, add product image gallery, download\u002Fexport media folders, etc. That’s a great way to boost your admin workflow and productivity.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>NEW – Folder Tree Themes (PRO)\u003C\u002Fstrong>\u003Cbr \u002F>\nInstead of the traditional gray shade of folder icon, now you can transform your “Folderella” into \u003Cstrong>Dropbox\u003C\u002Fstrong> theme or \u003Cstrong>Windows 11\u003C\u002Fstrong> styling.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Download Media Folder (PRO)\u003C\u002Fstrong>\u003Cbr \u002F>\nExport an entire media folder, including its subfolders and files, in a single ZIP file. Keep the same folder structure. Backup categorized media files.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Smart Startup Folder\u003C\u002Fstrong>\u003Cbr \u002F>\nChoose a specific folder or previously opened folder upon startup. Quickly get back to work. Save more time.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>File Location\u003C\u002Fstrong>\u003Cbr \u002F>\nLocate any file in its details modal and easily change its containing folder.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Friendly User Interface\u003C\u002Fstrong>\u003Cbr \u002F>\nDrag and drop to upload or bulk move files into folders. Drag and drop to arrange folders and subfolders.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Smart Context Menu\u003C\u002Fstrong>\u003Cbr \u002F>\nRight-click on any FileBird folder to quickly create a subfolder, rename, set color, cut, paste, or delete it just the way you do on your computer.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Full Control In One Toolbar\u003C\u002Fstrong>\u003Cbr \u002F>\nFileBird’s collapsible sidebar provides you with ultimate control over all WordPress media library folders.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Painless Migration\u003C\u002Fstrong>\u003Cbr \u002F>\nImport and seamlessly synchronize media category\u002Ffolder structure from Enhanced Media Library, WP Media Folder by JoomUnited, WordPress Media Library Folders by Max Foundry, Real Media Library, and HappyFiles.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Export Folders Organization\u003C\u002Fstrong>\u003Cbr \u002F>\nOne-click to export the whole WP media folder structure so that you can migrate it to your live sites or simply keep a backup.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>User Based Folder View\u003C\u002Fstrong>\u003Cbr \u002F>\nEnabling this mode allows admins and other users access to create their own categories\u002Fdirectories. A user can freely manage his\u002Fher folders without affecting others’ directory structure.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Powerful Search Feature\u003C\u002Fstrong>\u003Cbr \u002F>\nYou can sort and search for files and folder names not only in the \u003Cstrong>Media library\u003C\u002Fstrong> but also while browsing images through the \u003Cstrong>page\u002Fpost editor\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Various Sort Options (PRO)\u003C\u002Fstrong>\u003Cbr \u002F>\nGo advanced with 2 ways to sort folders and 10 ways to sort files. This is a great time-saver for all busy WordPress admins & webmasters.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Sort Files by File Size (PRO)\u003C\u002Fstrong>\u003Cbr \u002F>\nNow you can calculate your attachment size in a single click and sort files by file size.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Custom Folder Color (PRO)\u003C\u002Fstrong>\u003Cbr \u002F>\nRight-click on a specific folder to pick a distinct color. This helps differentiate it from numerous folders.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Multiple Tree View Styles (PRO)\u003C\u002Fstrong>\u003Cbr \u002F>\nApart from the hierarchical tree view, you have the option to hide levels from the tree view, too. This flat tree view is very useful for those with a large number of folders.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Categorize Pages, Posts, and Custom Post Types (PRO)\u003C\u002Fstrong>\u003Cbr \u002F>\nEasily enable the folder tree to organize your WordPress pages, posts, plugins, WooCommerce coupons, discounts, and other CPTs.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Customizable Default File Order\u003C\u002Fstrong>\u003Cbr \u002F>\nSet a way of sorting files alphabetically by ascending\u002Fdescending the file name, title, date, modified, and author.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Bulk-Delete Folders\u003C\u002Fstrong>\u003Cbr \u002F>\nNow, you can bulk-select File Bird folders and delete them in a single click. All those files will be moved to the Uncategorized folder and remain intact.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>RTL Supported\u003C\u002Fstrong>\u003Cbr \u002F>\nFileBird supports RTL languages including Hebrew, Arabic, etc.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Many Languages Supported\u003C\u002Fstrong>\u003Cbr \u002F>\nThis plugin supports most popular languages such as English, Spanish, Italian, French, German, Dutch, Hebrew, etc.\u003C\u002Fp>\n\u003Ch3>🙋‍♂️DID YOU KNOW?\u003C\u002Fh3>\n\u003Cp>That FileBird now comes with an addon to help you create a standalone WordPress document gallery using Gutenberg and FileBird folders?\u003Cbr \u002F>\n\u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Be sure to check it out: \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ffilebird-document-library\u002F\" rel=\"ugc\">FileBird Document Library\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>👍 HOW DOES FILEBIRD WORK?\u003C\u002Fh3>\n\u003Cp>Are you a WordPress website administrator?\u003C\u002Fp>\n\u003Cp>Managing a WordPress site means that you’ll be adding tons of multi-media files, such as images, videos, audios, documents, etc., into your WP media library.\u003C\u002Fp>\n\u003Cp>As a result, your library has to store thousands of files and could become a total mess. WordPress default file name search function is a good thing but it will never match the ease of going directly to a folder. That’s when FileBird comes in to help with managing files in WordPress!\u003C\u002Fp>\n\u003Cp>This media file manager gives you the ability to easily organize all files by drag and drop between folders. With FileBird in hand, things will be a lot better than they were.\u003C\u002Fp>\n\u003Cp>The best thing about a folder-based structure is it makes it very easy to find the files you need and saves you so much time.\u003C\u002Fp>\n\u003Cp>You won’t see WordPress media library not loading, as FileBird smart-loads one folder at a time.\u003C\u002Fp>\n\u003Ch3>🚀 Tips to manage WP media folders like a pro with FileBird\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Upload multiple folders and their files directly from your computer to WordPress\u003C\u002Fli>\n\u003Cli>Create a gallery from folders using the Gutenberg block of FileBird gallery \u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fninjateam.org\u002Fdocument-gallery-wordpress\u002F\" rel=\"nofollow ugc\">Create WordPress document gallery\u003C\u002Fa> with shortcode\u003C\u002Fli>\n\u003Cli>Resize the left sidebar to get an overview of all folders\u003C\u002Fli>\n\u003Cli>Upload files to a specific folder by choosing the destination folder from the dropdown\u003C\u002Fli>\n\u003Cli>Easily \u003Cstrong>search\u003C\u002Fstrong> for the name of file\u002Ffolder\u003C\u002Fli>\n\u003Cli>From the page\u002Fpost composer, \u003Cstrong>browse\u003C\u002Fstrong> files and folders in the FileBird UI\u003C\u002Fli>\n\u003Cli>While \u003Ca href=\"https:\u002F\u002Fyaycommerce.com\u002Fwoocommerce-email-template-customization\u002F\" rel=\"nofollow ugc\">customizing WooCommerce email\u003C\u002Fa> with a drag-and-drop email builder, you can quickly find the images you need\u003C\u002Fli>\n\u003Cli>Keep your folders uncluttered by clearing out the old files using the \u003Cstrong>Sort by file size\u003C\u002Fstrong> feature\u003C\u002Fli>\n\u003Cli>Press ESC to exit bulk select mode\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>⛩️ PREMIUM COMPATIBILITY\u003C\u002Fh3>\n\u003Cp>With \u003Ca href=\"https:\u002F\u002F1.envato.market\u002FFileBird-Premium\" rel=\"nofollow ugc\">FileBird Pro\u003C\u002Fa>, you will be able to use folders to organize posts, pages, WooCommerce products, coupons, templates, and other custom post types. These premium-only features include integrations with third-party themes and plugins.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>THEMES\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Avada – #1 WordPress best selling theme of all time\u003C\u002Fli>\n\u003Cli>Divi – Theme from ElegantThemes\u003C\u002Fli>\n\u003Cli>Enfold – The user-friendliest WordPress Theme ever made\u003C\u002Fli>\n\u003Cli>Uncode – The highly anticipated Frontend Editor\u003C\u002Fli>\n\u003Cli>Jupiter – Elementor Multi-Purpose Theme\u003C\u002Fli>\n\u003Cli>Flatsome – Best selling WooCommerce Theme\u003C\u002Fli>\n\u003Cli>Salient – Responsive Multi-Purpose Theme\u003C\u002Fli>\n\u003Cli>XStore – Responsive Multi-Purpose WooCommerce WordPress Theme\u003C\u002Fli>\n\u003Cli>KLEO – Community Multi Purpose BuddyPress Theme\u003C\u002Fli>\n\u003Cli>Bricks Builder\u003C\u002Fli>\n\u003Cli>And a lot more +++\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>PLUGINS\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>WPML – Best WP plugin to translate and display your website in any language\u003C\u002Fli>\n\u003Cli>Polylang – A plugin that allows you to create a bilingual or multilingual WordPress site\u003C\u002Fli>\n\u003Cli>Elementor Website Builder \u003C\u002Fli>\n\u003Cli>JetEngine\u003C\u002Fli>\n\u003Cli>Flatsome UX Builder\u003C\u002Fli>\n\u003Cli>Divi Builder\u003C\u002Fli>\n\u003Cli>Visual Composer\u003C\u002Fli>\n\u003Cli>Beaver Builder\u003C\u002Fli>\n\u003Cli>SiteOrigin Pro\u003C\u002Fli>\n\u003Cli>KingComposer\u003C\u002Fli>\n\u003Cli>Tatsu Builder\u003C\u002Fli>\n\u003Cli>Oxygen\u003C\u002Fli>\n\u003Cli>Thrive Architect\u003C\u002Fli>\n\u003Cli>Classic Editor – Old WordPress editor to display tree view folders\u003C\u002Fli>\n\u003Cli>Slider Revolution – Best selling WordPress responsive slider plugin\u003C\u002Fli>\n\u003Cli>EWWW Image Optimizer\u003C\u002Fli>\n\u003Cli>FooGallery Image Gallery – Responsive Photo Gallery\u003C\u002Fli>\n\u003Cli>Smush – Compress, Image Optimizer, Lazy Load, WebP Images\u003C\u002Fli>\n\u003Cli>And a lot more +++\u003C\u002Fli>\n\u003C\u002Ful>\n","Organize thousands of WordPress media files in folders \u002F categories with ease.",200000,6229951,1106,"2026-01-12T13:15:00.000Z","3.0",[114,96,115,116,117],"file-manager","media-folders","wordpress-media-library-folders","wp-media-folders","https:\u002F\u002Fninjateam.org\u002Fwordpress-media-library-folders\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ffilebird.6.5.2.zip",89,"2025-12-15 02:12:47",{"attackSurface":123,"codeSignals":144,"taintFlows":192,"riskAssessment":193,"analyzedAt":204},{"hooks":124,"ajaxHandlers":140,"restRoutes":141,"shortcodes":142,"cronEvents":143,"entryPointCount":24,"unprotectedCount":24},[125,131,136],{"type":126,"name":127,"callback":128,"priority":14,"file":129,"line":130},"filter","manage_media_columns","exifcolumns_columns","exif-columns.php",25,{"type":132,"name":133,"callback":134,"priority":14,"file":129,"line":135},"action","manage_media_custom_column","exifcolumns_custom_columns",26,{"type":126,"name":137,"callback":138,"file":129,"line":139},"manage_upload_sortable_columns","exifcolumns_sortable_columns",123,[],[],[],[],{"dangerousFunctions":145,"sqlUsage":146,"outputEscaping":148,"fileOperations":24,"externalRequests":24,"nonceChecks":24,"capabilityChecks":24,"bundledLibraries":191},[],{"prepared":24,"raw":24,"locations":147},[],{"escaped":24,"rawEcho":149,"locations":150},20,[151,154,156,158,160,162,164,166,168,170,172,174,176,178,180,181,183,185,187,189],{"file":129,"line":152,"context":153},46,"raw output",{"file":129,"line":155,"context":153},47,{"file":129,"line":157,"context":153},48,{"file":129,"line":159,"context":153},49,{"file":129,"line":161,"context":153},50,{"file":129,"line":163,"context":153},52,{"file":129,"line":165,"context":153},55,{"file":129,"line":167,"context":153},57,{"file":129,"line":169,"context":153},58,{"file":129,"line":171,"context":153},59,{"file":129,"line":173,"context":153},65,{"file":129,"line":175,"context":153},71,{"file":129,"line":177,"context":153},77,{"file":129,"line":179,"context":153},83,{"file":129,"line":120,"context":153},{"file":129,"line":182,"context":153},96,{"file":129,"line":184,"context":153},99,{"file":129,"line":186,"context":153},106,{"file":129,"line":188,"context":153},112,{"file":129,"line":190,"context":153},118,[],[],{"summary":194,"deductions":195},"The exif-columns plugin, in version 1.0.3, presents a seemingly low-risk profile based on the provided static analysis and vulnerability history. The absence of any identified CVEs or known vulnerabilities suggests a mature and stable codebase, or potentially a lack of targeted security research. The static analysis also indicates a minimal attack surface with no discoverable AJAX handlers, REST API routes, shortcodes, or cron events, and crucially, no unprotected entry points. Furthermore, the code demonstrates good practice by utilizing prepared statements for all SQL queries, preventing a significant class of vulnerabilities.\n\nHowever, the analysis does reveal critical weaknesses. A significant concern is the complete lack of output escaping, meaning that any data processed or displayed by the plugin is not properly sanitized before being presented to the user. This opens the door to potential cross-site scripting (XSS) attacks if the plugin handles any user-supplied or externally sourced data that is then rendered without escaping. Additionally, the complete absence of nonce checks and capability checks for any potential (though currently undiscovered) interaction points is a notable security gap. While the attack surface is zero, if any functionality were to be added in the future without these essential security measures, it would be immediately vulnerable.\n\nIn conclusion, while the plugin has a clean vulnerability history and a well-secured (though minimal) attack surface in terms of entry points and SQL injection, the pervasive lack of output escaping is a serious flaw. This, coupled with the absence of nonce and capability checks for any hypothetical future interactions, means that the plugin has significant potential for cross-site scripting vulnerabilities and future privilege escalation if its functionality expands without adequate security hardening. The plugin's strengths lie in its lack of known vulnerabilities and secure SQL handling, but its weaknesses in output sanitization and general input validation are substantial.",[196,199,202],{"reason":197,"points":198},"0% output escaping",15,{"reason":200,"points":201},"0% capability checks",5,{"reason":203,"points":201},"0 nonce checks","2026-03-17T00:13:00.615Z",{"wat":206,"direct":212},{"assetPaths":207,"generatorPatterns":209,"scriptPaths":210,"versionParams":211},[208],"\u002Fwp-content\u002Fplugins\u002Fexif-columns\u002Fexif-columns.php",[],[],[],{"cssClasses":213,"htmlComments":214,"htmlAttributes":215,"restEndpoints":216,"jsGlobals":217,"shortcodeOutput":218},[],[],[],[],[],[]]