WordPress.org

Ready to get started?Download WordPress

Plugin Directory

MimeTypes Link Icons

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

Does `MimeTypes Link Icons` only convert links to uploaded documents ?

No. It searches your post for any links containing the file extensions you have activated. This will be triggered by any link within the normal content area.

I don't want MimeTypes Link Icons to convert a particular link....

No worries ;-) Just enable the classnames setting on the settings page and add one or more classnames.

The way this works is as follows: The plugin will look for the classname in your document and will remove the Mimetypes link icons (and file sizes) from all links wrapped within that class.

Examples:

  • If you want to disable the plugin for a particular link, you may add the class "no_mtli" to the link itself and add "no_mtli" to the list of excluded classes.
  • If you want to disable the plugin for a particular post - for instance post 123 -, you could add the "post-123" class to the list of excluded classes.
  • If you want to disable the plugin for all attachment pages, you could add the "type-attachment" class to the list of excluded classes. Just for the image attachment pages ? add the "image-attachment" class.

Please note: Classnames may differ depending on your theme, so look at the html source of the relevant pages to determine which classname(s) to exclude.

I want to format the file size differently...

You can ;-)

First of all, you can change the rounding precision for the file size on the settings screen.

Secondly, there's an output filter available for your use which will receive the formatted file size string which will look something along the lines of (123.4 kB).

To use the filter add a snippet like the following to your (child-)theme's functions.php file:

function my_function( $formatted_file_size ) {
    // do your thing
    return $formatted_file_size;
}
add_filter( 'mtli_filesize', 'my_function' );

Please note: be aware that the file size string will be added to the page via CSS, so the output of your function should be usable in a CSS string!

Is there a way to clear the file size cache ?

Yup! Just uncheck the 'cache file sizes' checkbox, save your settings and then check the checkbox again. The file size cache has now been cleared.

I want to have the mimetype icons for a content area which is outside of the loop (a sidebar for instance). Can I?

Yes you can.

If you generate the output yourself in a template file, change:

echo $my_content;

to

echo mimetypes_to_icons( $my_content );

or even better, if the content you want to change supplies you with an output filter - add the following to your (child-)theme's functions.php file:

add_filter( 'name_of_output_filter', 'mimetypes_to_icons', 15 );

for instance:

add_filter( 'widget_text', 'mimetypes_to_icons', 15 );

Please note: the icons generated for that specific content area, will be generated in non-async mode. All other settings will be respected.

I want to change the classes used by this plugin

You can ;-)

There's an output filter available for the attachment link classes. Mind: the $classnames_string variables holds all the classes - not just the MTLI classes - which the attachment link, i.e. the <a> tag, has.

To use the filter add a snippet like the following to your (child-)theme's functions.php file:

function my_classnameFunction( $classnames_string ) {
    // do your thing
    return $classnames_string;
}
add_filter( 'mtli_classnames', 'my_classnameFunction' );

I want to be able to upload more file types to my WordPress blog!

This is outside of the scope of this plugin, but you should probably read this explanation (includes code sample) on how to add more file types to the WordPress allowed list in an upgrade-friendly manner.

However, if you do add extra file types to your blog and these file types would not (yet) be included in this plugin, you can add the mimetype extensions to the list this plugin uses, by using the filter hook we provided for this purpose.

To use the filter add a snippet like the following to your (child-)theme's functions.php file:

function change_mimetypes( $current_mimetypes ) {
    // do your thing to the array
    //
    // ie $current_mimetypes[] = 'mp6';
    //
    // or $current_mimetypes = array('mp4','pdf','zzz'); - don't forget to add your own css to your stylesheet in the format .mtli_[extension_without_dots] {background-image:url('/path/to/your/icon')}
    return $current_mimetypes;
}
add_filter( 'mtli_active_mimetypes', 'change_mimetypes' );

I'm a plugin/theme developer and the MimeTypes Link Icons plugin is conflicting with my plugin...

You can temporarily suspend this plugin by using the pause_mtli() and unpause_mtli() functions.

Add the following code to your plugin where you want to suspend the plugin:

if( function_exists( 'pause_mtli' ) ) {
    pause_mtli();
}

// Your code

if( function_exists( 'unpause_mtli' ) ) {
    unpause_mtli();
}

Please do advise your users about your use of these functions as we're not looking to get complaints from users about this plugin not working ;-)

How can I translate the plugin?

The plugin is fully translation ready and translations are much appreciated! Use the /languages/mimetypes-link-icons.pot file which is included in the download to create a new .po file for your language. To get your translation included in the next release of this plugin:

  • Send us pull request or open an issue on GitHub
  • Open a thread in the WP forum
  • or send the translation to us via email

If you need more information, read this article on how to translate using a .po file.

Requires: 3.5 or higher
Compatible up to: 3.9.2
Last Updated: 2014-6-10
Downloads: 46,868

Ratings

4 stars
4.9 out of 5 stars

Support

2 of 4 support threads in the last two months have been resolved.

Got something to say? Need help?

Compatibility

+
=
Not enough data

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

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