Plugin Directory

MimeTypes Link Icons

Adds icons automatically to any uploads and/or file links inserted into your blog posts.


  • Code enhancements


  • Minor tweak


  • Added the priority of 15 to pause_mtli() and unpause_mtli() functions, to match the initial add_filter setup
  • Renamed folder after typo


  • [Bug fix] Prevent double adding of styles if/when the main function is called several times
  • [Speed] Lower Curl connect time-out, so page loading will be faster if no connection can be made to retrieve the file size of a file.
  • Added note about filter extension requirement to this readme file.
  • Minor code tweaks


  • [Bug fix] filters on plugins_url() could not be applied, fixed
  • [Bug fix] for upgrade routine not running on (re-)activation of the plugin
  • [Bug fix] Small optimization in link matching regex which should prevent an edge case bug. Thanks ts_sklett for reporting.
  • [Bug fix] Fix icon spacing issue as reported by blitz fahrradmanufaktur
  • [New file extensions] Added support for additional file extensions: .cls, .f, .f77, .f90, .py, .rar, .sty

And further: * Fully leveraged the Options API * Upped the minimum WP level to fully take advantage of new functions and APIs * Tested up to WP 3.8-beta * Code style validated against WordPress standards * Added API documentation * One time only force update of internal domains option * Improved charset support for settings page * Small improvements in validation * Removed auto-deactivation if run on old versions (was buggy) * Various small code tweaks



  • [Bug fix] zip packages for tags weren't working properly


  • [Bug fix] The new mimetype filter hook was called before the theme (and therefore the functions.php file) was loaded.
  • [Security] Added some extra security measures


  • [New feature] Added extensibility to classnames and file types, meaning that users can add a filter hook to edit/add their own styles
  • [New feature] Added debug mode to async replacement
  • [Bug fix] Async replacement was balking at nodes
  • [Bug fix] Settings links on plugin page didn't work, thanks sndu for reporting
  • [Bug fix] Error in filesize retrieval if internal domain was not set correctly, thanks PsychicSmurf for reporting
  • [Misc] Added internal debugging variable and some debugging code to help determine problems with filesizes and paths. See the Error reporting section in the readme file for info on how and when to use this.

3.0 by jrf

  • [New file extensions] Added additional file extensions which are within the WP allowed file types list: .jpeg .pps, .ppsx, .m4a, .wav, .avi, .3gp, .3g2
  • [New file extensions] Added several additional file extensions based on user requests: .pub, .eps, .rtf and .exe
  • [New file extensions] And some more: .tiff, .ico, .ttf, .qt, .air, .msi, .sql, .flv

  • [New feature] Ability to disable this plugin for more than one classname

  • [New feature] Caching of the results of (slow) file size retrievals. This will make page loading a lot faster for pages with lots of file links. Will automatically be turned on, you can turn it off and/or fine tune the cache duration via the settings page. Default cache duration: 1 week.
  • [New feature] Set the rounding precision (number of digits after the decimal point) for file sizes, small files (b) will always round to 0 decimals.
  • [New feature] Output filter for file size string See the FAQ for more info.
  • [New feature] Ability to have mimetype icons for content outside of the loop See the FAQ for info on how to use this.

  • [Usability] Added 'check all'/'uncheck all' togglers for the file types to the settings page

  • [Usability] Compacter options screen - file types now display in two columns
  • [Usability] Added help tab to the settings page
  • [Usability] Added proper settings link on plugins page, credits now link to the GitHub repo
  • [Usability] Added clean uninstall routine

  • [Compatibility] Added pause_mtli() and unpause_mtli() functions for use by other plugins in case of (page specific) conflicts. See the FAQ for info on how to use this.

  • [Bug fix] Images didn't display if wp-content and/or the plugins directory was in a non-standard location.

  • [Bug fix] Added epub css styling
  • [Bug fix] File size now complies with the localized number format style
  • [Bug fix] Curl settings error when in safe_mode - thanks wolkenkrieger for reporting
  • [Bug fix] If file size is unknown or file size retrieval failed completely, no file size indication will be shown (it used to show 'unknownb' or 'b')
  • [Bug fix] Links are now matched in a case-insensitive manner, so that both document.DOC as well as document.doc will be matched (was only lowercase)
  • [Bug fix] If a link already had a class attribute, a second one used to be added. Most browsers don't handle this well. Fixed so that additional class will be added to the existing class attribute.
  • [Bug fix] If file size showing would be on and the link had the disabled classname set, the icon would not show, but the file size still did - thanks Leanne for reporting.
  • [Bug fix] File size showing in async mode would never work
  • [Bug fix] Classes to avoid where not being applied when not in async mode / would force async mode - thanks John Percival for reporting
  • [Bug fix] File size not always showing on attachments.php page - thanks aluizioll for reporting
  • [Bug fix] Padding was too easily overruled by CSS from other plugins - thanks MGmirkin for reporting
  • [Bug fix] File size was retrieved twice for each file... oops.
  • [Bug fix] Hopefully fixed bug in retrieval of file size - thanks brigerard and digitalnordic for reporting
  • [Bug fix] File size retrieval should now also work for (most) relative paths

  • [Localization] Added .pot file to enable translations of this plugin

  • [Code improvements] Complete rewrite in OO style including implementation of the Settings API

  • [Code improvements] Implemented lean loading as much as possible
  • [Code improvements] Greatly improved input validation for the options page

  • [Misc] Added GPL license information


Adding epub due to user request

Further fixes suggested by @jrf


Fixes suggested by @jrf


Admin CSS fix for some users


Fix for some users who had issues with $_GET vars on style.php


Changes were made by mistake in v 2.1.8 that weren't completed.


Fixed a typo found by @pdecaux


Fixed an IE8 bug found by @quartney


  • Added eleven new mime types: deb, flac, midi, mkv, mp3, oga, ogg, ogv, spx, xml, xpi.
  • New option to have icon display on left or right (defaults to left)
  • Alphabetized file types
  • Changed default image size to "16" (better default because it is closer to text size and does not overwhelm the page with large icons)
  • Changed default image type to "png" (better image)
  • Reworded text and streamlined display format for Enable/Disable classname override, Show File Size, and Asynchronous Replacement.
  • Removed duplicate "png" option from options/default options array


  • Adding DJVU icon
  • Typo in the code that in some circumstances leads to plugin 2.1.4 ceasing to function


  • Some bug fixes and plugin conflict fixes. The exclude class name can now be used on parents and the link itself


  • Removing a couple of short php open tags


  • Adding 3 new mime types (openoffice)


  • Adding 14 new mime types (mostly video)


  • File size was being overwritten by JS. Fixed.


  • Bug fix for IE7 users


  • Bug fix for asynchronous users.


  • Bug fix for asynchronous users. Bug fix for new icon types


  • Adding 14 more icon types - jpg, tar, txt, gif, png, tgz, psd, ai, indd, iso, gz, dmg, bib, & tex


  • 2.0.5 is not showing in the repository. 2.0.6 is a bump for 2.0.5



  • Shifting the CSS to the head to stop CSS code being truncated and displaying on search results etc in the_excerpt


  • Fixing bug that picked up .xlsx files when only .xls files were selected
  • Fixing bug that caused problems if the user modified the plugin to run off the extract
  • Adding optional field that will skip adding the icon in a parent div of the site owner's choosing


  • Adding smaller 16x16 images at request of user


  • Fixing bug with asynchronous mode


  • Adding option for displaying filesize. Uses :after pseudo element with CSS. Therefore, will not work on IE6.


  • Enhancements


  • Minor Bug fix. Preparing for 2.0


  • Adding pptx format



  • Turns out some themes don't use get_header OR get_footer. Had to put the hook into the_content instead.


  • Adding optional asynchronous method for users with conflicting plugins (for example the infocus theme's fancy_box)


  • Bug fix on the preg_replace replace syntax


  • Added new file type icons at request of benlikespizza - ppt, skp, dwg, dwf, jpg


  • Fixed Bug that caused icons not to appear when some conflicting plugins were installed


  • Typo in CSS caused some images not to show

Requires: 3.5 or higher
Compatible up to: 3.9.14
Last Updated: 1 year ago
Active Installs: 10,000+


5 out of 5 stars


0 of 3 support threads in the last two months have been marked resolved.

Got something to say? Need help?


Not enough data

0 people say it works.
0 people say it's broken.

100,1,1 100,1,1
100,1,1 100,1,1 0,1,0 100,1,1
100,1,1 100,3,3 100,1,1
67,3,2 100,2,2 100,1,1 100,1,1