F4 Media Taxonomies


F4 Media Taxonomies provides the ability to filter the media library by categories, tags and/or custom taxonomies.
You can use the built-in taxonomies (category or post_tag) or any custom taxonomy.

If a taxonomy is enabled for attachments, you can assign as many of their terms to an attachment as you need.
You can assign them directly in the media library or in every media-selector overlay.
There is also a nifty bulk function in the media library, which allows you to assign a single term to multiple attachments at once.

Attachments can then be filtered by these terms. The filters are available in the media library and in every media-selector overlay.

Different than other similar plugins, F4 Media Taxonomies is 100% free!


See FAQ for a guide how to enable categories, tags and custom taxonomies.

Features overview

  • Use any taxonomy (built-in or custom)
  • Assign one or more terms to an attachment in media library/overlay
  • Bulk assign terms to multiple attachments at once in media library
  • Filter attachments by terms in media library/overlay
  • Easy to use
  • Lightweight and optimized
  • 100% free!

Captures d’écran

  • Filter by taxonomies in media library list
  • Filter by taxonomies in media library grid
  • Assign one or more taxonomies to an attachment
  • Hierarchical dropdown menu for taxonomies assignment
  • Filter by taxonomies in media insert overlay


  1. Upload the plugin files to the /wp-content/plugins/f4-media-taxonomies directory, or install the plugin through the WordPress plugins screen directly
  2. Activate the plugin through the ‘Plugins’ screen in WordPress
  3. See FAQ for a guide how to enable categories, tags and custom taxonomies
  4. All taxonomies that are assigned to the attachment post-type are automatically enabled


How to enable categories

The built-in taxonomy category can be enabled with this snippet. Just put it into your functions.php:

add_action('init', function() {
    register_taxonomy_for_object_type('category', 'attachment');

How to enable tags

The built-in taxonomy post_tag can be enabled with this snippet. Just put it into your functions.php:

add_action('init', function() {
    register_taxonomy_for_object_type('post_tag', 'attachment');

How to enable custom taxonomies

There are two ways to enable custom taxonomies for attachments:

New taxonomy:

If the taxonomy does not exist yet and you want to create a new one, you have to set the object_type in the register_taxonomy() function to attachment (see WordPress codex).

add_action('init', function() {

Existing taxonomy:

If the taxonomy is already registered, you can assign it with this snippet. Just put it into your functions.php and change media-category to your taxonomy:

add_action('init', function() {
    register_taxonomy_for_object_type('media-category', 'attachment');

The filters do not appear in the media overlay

For a better performance, we only include the scripts and files when they are needed. Some plugins can cause a problem with this functionality.
For this case we offer a hook, which allows you to enable the filter for special conditions. If this hook returns true, the filter is enabled for the current site.

add_filter('F4/MT/Core/has_filter', function() {
    return true;

Can I enable taxonomies directly in the backend?

No. We simply use the taxonomies that are registered in the code. Maybe in the future, but we want to keep this plugin as lightweight and simple as possible.

Is it really free?

Yes, absolutely!


9 mai 2024
After testing a bunch of plugins that promised a lot but never did the thing…This plugin is simple, light, and works like a charme!!


17 avril 2023
Good clean solution to tagging uploaded files.
23 août 2022
It took me awhile to find this but so glad I did. I was just about to start coding it myself. It uses the *built-in* categories!!! No extra clutter, neat, simple, just waht I was looking for.
27 janvier 2022
Genau das, was ich gesucht habe. Ist schon extrem zeitsparend, wenn man nicht jedes Bild einzeln editieren muss, nur um eine Kategorie oder ein Schlagwort zu ergänzen. Damit füllt man ganz einfach die Lücken in den Daten, ohne vor dem Zeitaufwand zu kapitulieren. Vielen Dank.
23 janvier 2022
Just installed this plugin on one of my sites. Does everything I expected and the source code also looks clean and lean! 5 Stars, thank you Faktor 4!!
15 octobre 2021
A simple plugin that works nicely. It’s a good alternative (maybe better) to custom directories for media files in WP.
Lire les 12 avis

Contributeurs & développeurs

« F4 Media Taxonomies » est un logiciel libre. Les personnes suivantes ont contribué à cette extension.


“F4 Media Taxonomies” a été traduit dans 4 locales. Remerciez l’équipe de traduction pour ses contributions.

Traduisez « F4 Media Taxonomies » dans votre langue.

Le développement vous intéresse ?

Parcourir le code, consulter le SVN dépôt, ou s’inscrire au journal de développement par RSS.

Historique des changements


  • Remove double array key
  • Support WordPress 6.5


  • Support WordPress 6.1


  • Update www.f4dev.ch links


  • Fix bulk action and taxonomy filter dropdowns
  • Improve the grid view performance


  • Terms are now lazy loaded with ajax in assignment select
  • Term assignment styles and scripts optimized
  • Term assignment sorting fixed
  • Update selectize to verison 0.13.5


  • Support WordPress 6.0


  • Correctly update post term count (thanks to @nonverbla for the hint)
  • Support WordPress 5.9


  • Support WordPress 5.8


  • Support WordPress 5.7


  • Fix taxonomy select for new jQuery version
  • Support WordPress 5.6


  • Fix behaviour after taxonomy selection


  • Support WordPress 5.5


  • Support WordPress 5.4


  • Fix bottom bulk action button in media list


  • Add CMB2 plugin support


  • WordPress 5.3 compatibility fixes
  • Optimized dropdown width in media modal


  • Update deprecated get_terms function


  • Few PHP and JS code optimisations


  • Fix customizer error
  • Fix missing dropdowns in media overlay


  • Fix filter error


  • Show only taxonomies with show_ui true


  • Version upgrade for correct repository infos


  • Initial stable release