Media Management

Are you struggling with an enormous collection of files on your site?  How do you know what files are being used and what aren't?  Are your images accessible?  If any of these things are issues for you, meet the new and improved Media module...

A Little Background

Media handling has, historically, been a very complicated subject in the Drupal community, in general. Drupal core has never had a dedicated tool to manage files.

The Drupal culture has a long held tradition of inviting a diverse array of module choices for things such as media storage and management, with the belief that, eventually, the best option would surface as more and more users gravitate towards it.  As a result, there grew eight commonly used options for file management.  This doesn't count all of the different libraries and plugins that were also needed to make these things work.

In short, putting together a good, solid file management system in Drupal is really, really tricky.  When you combine it with the fact that you may possibly have to deal with serving private files and your file browser also needs to integrate with your text editor of choice, a site builder could be left scratching their head for days trying to get the mix right.

There's also the issue of the media itself.

Media not only comes in many different forms: from image file types such as .jpeg and .png, to document types such as .docx and .pdf, to archival types such as .zip and .tar...but it also now comes from different sources.  Gone are they days where a site administrator would have to worry about storage limits for notorious graphic, video, audio, or presentation space hogs -- now you can tap into the power of YouTube, or SoundCloud, or Prezi to store and manage those big files while embedding a lightweight player or container in your website to display them through your own environment.  Not only is this a big dollar saver in terms of storage space and convenience, but it also opens up additional channels to promote your material.

Unfortunately, it also can create some management issues for your site.  How do you keep track of a file that actually exists somewhere else outside of your site?  How do you consolidate this with the media you do have on your site to get a big picture view of everything?  How do you easily embed these things?  Expanding beyond file management, how do we perform operations on things like image files, and how do we make our media accessible?

The Media Module to the Rescue...Sort Of

Starting with Drupal 7, however, it became evident that a more consolidated approach was needed. Looking towards the future, the core developers at determined that a stock solution should be provided and they made a goal to have that solution in place by Drupal 8.  There remained, however, the problem of building that path through Drupal 7.

In December of 2010, Media 7.x-1.x-dev was released alongside the alpha 1 release of Drupal 7.  Things looked pretty promising...until the issue of file types surfaced. 

The fact that there are different file types, and they need to be handled differently, forced the developers to branch the Media module into a 2.0 release so it could pair with the File Entity module, which provided the layer of abstraction that was needed to handle these different types of files.  In August of 2011, Media 7.x-2.0-unstable1 was released, but it was, as noted, very unstable. As it turned out, so was the health of the Media module's lead maintainer, Aaron Winborn, who had been diagnosed with ALS a few months earlier, in the spring of 2011.

Understandably, updates became very sporadic. 

OSU Drupal 7 Adoption

The OSU Drupal 7 distribution has had the Media module installed and enabled since our very first Drupal 7 release.  We looked forward to finally having a solid solution in place for our users.  The problem, however, was that there were some pretty big bugs in Media 1.0, including the fact that the Media Library didn't display at all and there were no Alt Tag or Title fields available. As a result, we kept fairly quiet about this module.

Media 2.0 made some great progress with the Media Library, but it was still missing the accessibility side of things.  We were also faced with the problem that, if we upgraded our distribution to the 2.0 branch, there was no way to roll back.  All of the OSU Drupal 7 sites would've been broken.  This left us in a bit of a quandry.

We ended up retaining our old file management system, IMCE, but had a couple of features that used a piece of Media module functionality for file uploading.  This wasn't the perfect solution, as the file uploader was missing a way to set Alt and Title tags for images.

In October of 2014, Media 7.x-2.0-alpha4 was released. We started playing with the alpha 4 release and were encouraged to see that both the issue with the Media Library and the Alt Tag issue had been fixed.  It also now provided some added functionality such as the ability to easily upload bulk files and a way to track what file is used where.  This was pretty cool in our eyes.  We were really anticipating an official release, as we normally don't adopt modules until they, at least, reach an RC (Release Candidate) designation.

On March 24th, 2015, Aaron Winborn, the lead maintainer of the Media module, passed away due to complications with ALS.  We were really saddened by this news as Aaron was a great contributor to the community. We were also faced with the realization that this module stood a good chance of never reaching RC status before the release of Drupal 8.  This, coupled with the fact that our own community here at OSU really needed the accessibility fixes, pushed us to do a very thorough and deep evaluation.

We're happy to announce that the Media module is finally here!  Let's take a look at some of the different things that it offers us...

Greater Accessibility

Given the newly added presence of the Alt and Title text elements, we're now able to fully integrate the Media browser not only into the WYSIWYG editor, but also into all of our features and guarantee accessibility for our users who rely on screen readers.

Media Library

The Media Library is a cleanly arranged display of file thumbnails.  Clicking on individual thumbnails takes a permitted user to the Edit page for that particular file.  The Media Library also provides permitted users the ability to do some bulk operation tasks, such as bulk deleting files.

Bulk File Uploading

No more "one file at a time" uploads into your site!  Media's bulk uploader is super efficient and very user friendly.

File Usage Display

Now you can actually see where your files are being used, if they're being used at all.  This super tool, combined with the ability to bulk delete unused files, will have your file system cleaned up in no time.

Text Editor Integration

Media is now fully integrated with the text editor.  Clicking on the "Media" toolbar button will pop open the Media Selector tool, which allows you to upload media, select existing media from the Media Library, or pull in media from third party sources such as Flickr or YouTube.

Future Views Integration

Media utilizes the File Entity module, which treats files like Entities.  Views works with Entities.  Look forward to some really handy OSU views that will help you keep those files managed with ease.

Want to find out more?  Take a look at the initial instructions that we have.  Or you can always join us in the OSU Drupal 7 Features workshop for a guided, hands-on experience.