Bulk uploading images to a Picture Library with meta data… sort of.

Posted by & filed under .

In SharePoint, Picture Libraries are some mythical special creature, unlike any other list or library. It’s the only place you can get the Image column… and the views are severely limited. There are also issues around “Upload multiple files” not working… I’ve seen posts that suggest you need to install the Microsoft Office Picture Manager, however even when doing this I was unable to get that elusive button to appear.

Here is my workaround solution:

1. Connect with SharePoint Designer, connect to the Picture Library, and bulk upload you images here. Note that doing this *will* strip all the metadata from the images, one place in particular I ran into issues on this was on rotated images with “orientation” EXIF data. I had to run an exif autorotate utility to save these images as properly rotated before uploading

2. Create a new view on the Picture Library – Create it with all the columns you want to edit, and change the Style to be “Basic Table”

3. Force the view into grid view mode – This is done by getting the view GUID (which can be obtained from the querystring when you’re editing the view) and adding this query string when on your views page:

?ShowInGrid=True&View=<viewGUID>

So for example, when I use my view named “CustomView”, it comes up with the URL:

http://sharepointSite/PictureLibrary/Forms/CustomView.aspx

So I tag on the custom query string with the GUID for that view as well:

http://sharepointSite/PictureLibrary/Forms/CustomView.aspx?ShowInGrid=True&View=%7B8DC968A8%2DF575%2D46E9%2D95AC%2DAC3E5A7B6BFF%7D

And this forces the item into the Access View, even though Picture Libraries don’t have a way to make a view with this functionality through the UI.

4. Use grid view to bulk edit your items. It’s not as nice as having the metadata filled in automatically, but you can do things like fill in a cell and then click and drag the lower-right corner to fill in the other cells with the same value. Which is at least quicker than uploading the images one by one and filling in the fields as you add them.