Extremely pixellated picture of a man in a blue shirt

Building a New Image Editing Experience for WordPress

If you’ve been paying unnaturally close attention to the goings on of the WordPress universe you may have noticed my name popping up in a post on Make WordPress UI about a new project to create a better image editing experience for WordPress. As the post explains Siobhan McKeown has put together a team that will be working on a new feature plugin to reimagine, redesign, and redevelop the image adding and editing process in WordPress, and that team includes yours truly.

So, to start off my contribution to this project I’m writing this post to provide my initial thoughts on what image editor in WordPress could look like as well as reflections on images in our culture, the different scenarios in which images are added in WordPress, and what the process of adding these different types of images should look like.

I would very much like to hear your thoughts on this and solicit your participation in this project as we move forward. WordPress is for the people who use it and your opinion about how image editing should be is vital for the process to be successful.

Image Editing as a First Rate Citizen

One of the primary goals for this process is to make image editing a first rate citizen of WordPress. Currently the option to edit an image is hidden under a text link in the Add / Edit Media modal. In the future rendition of this modal image editing should be part of the process with a prominent place in the modal.

The Transformed Role of Images

In my interactions with students from lynda.com, Emily Carr, BCIT, and all the other places I’ve spoken about and taught WordPress I’ve learned that of the many features in WordPress that don’t work the way users expect and/or want the image adding and editing experience ranks pretty high. There are many reasons for this, and many of them have nothing to do with WordPress but rather how our thinking about digital images and their place on the web has changed over the last few years.

Whereas the taking of images used to be something confined to a dedicated device (a camera) and the editing and adding of images involved complex and expensive software, we now live in a world where a large majority of the population carry a high resolution camera in their pocket. And that camera has software built in to not only edit but publish the images taken through an endless variety of channels.

How images are consumed has also changed: Once an image is published the viewing public can typically interact with it by liking it, sharing it, commenting on it, and even republishing it. There are also tools available that treat images embedded in larger contexts (images supporting articles or displayed in galleries and slideshows) as individual items that can be interacted with and shared outside the context they were presented in (Pinterest’s browser extensions and note taking apps like Evernote are examples of this phenomenon).

Image editing itself has undergone a transformation with the introduction of RAW image data and editing. The original image file can now be changed an infinite number of times and render an infinite number of versions without the image data itself being altered. The actual changes happen in separate layers – be that associated files or through filters and frames – while the original is left intact. While this is currently the realm of image editing applications like Photoshop and Lightroom, advances in web technologies means we will soon have similar capabilities through new HTML elements and CSS filters.

All this is new and evolving and demands a complete rethink of the role of images in the context of published materials:

  • What is the intended role or purpose of an image when presented on the web?
  • Are images to be considered objects in their own right separate from the context they are presented in?
  • And if so, should the viewer be able to interact with the image outside the context it was presented in?

There are also technical considerations that need to be addressed:

  • Is the original version of the image important or should the cropped / edited version of the image be considered the actual object?
  • Does editing of an image belong in a dedicated application or in the context of the publishing application?
  • Should the editing of images be destructive (changing the original file), iterative (generating a new file), or visual (happening in separate layers without touching the file)?

WordPress has for the most part clear and definite answers to these questions, but they are largely based on a time we no longer live in. As technology and behavior changes we need to revisit these questions and redefine the role of images in WordPress and how the people who use WordPress can get the most out of their images.

Images and How We Use Them

The first and most important question that needs to be answered is how people use and want to use images within WordPress. The challenge here is that there are as many answers as there are people using the application. Even so we can hone in on some general scenarios that are common and can be addressed:

Single Images

Images can be the main item or even only item of a publication. In this case the image will often be edited before upload and the publisher will want the display of the image to stay true to the original. Single images can be accompanied by text but this text is secondary.

While adding these images as Featured Images makes sense from a social sharing perspective, the way Featured Images are handled within WordPress removes control from the publisher so she is more likely to add the image in the editor.

Grouped Images

Not to be confused with galleries, grouped images are added within the editor for more control. Like single images the publisher will likely do all editing prior to upload and care about positioning and display.

Currently there is little support for this usage scenario within WordPress.

Image Galleries

Galleries can be displayed as primary elements (the focal point of a publication) or as secondary or supportive elements. The publisher can choose positioning, display mode (columns, layout, etc) and on-clicked behavior.

Link to Attachment Page is the default option for image galleries in WordPress, but the Attachment Page template is an oft ignored feature of WordPress themes. This leads to inconsistent behavior and often forces the publisher to turn to plugins to display images in a visually pleasing and easily understandable way. The Attachment Page has tremendous value for publishers if the image is displayed along side the image description (content of the media post) but this requires theme support.

Images in Context

A common use of images on the web is as contextual elements. Images are placed throughout text as illustrations or further information. These images can contain image captions and link to other publications, larger versions of themselves, or their respective Attachment Pages.

The publisher utilizing images in this role is likely different from the one publishing Single Images. Here image editing is likely to be expected from WordPress itself, and that editing will be expected on a per-instance basis (the edit only affects the current iteration of the image). For images in context the publisher wants tight control of display, position, and behavior.

Featured Images

The evolution from Post Thumbnails to Featured Images and now images shared on social media has produced a new role for images and new complications for publishers: The Featured Image is handled as a stand-alone object that can be called along side other elements of a single publication and displayed independently in templates. This takes control of cropping, display, position, and behavior of the image out of the hands of the publisher and leaves it to WordPress itself and the theme designer / developer.

For publishers who seek tight control over how images are cropped and displayed this is a non-starter, but these publishers are often forced to use the feature anyway to ensure control when content is shared through social media.

Reimagining What Image Editing in WordPress Could Look Like

As this process begins, here are my preliminary ideas on what the image editing experience in WordPress could look like. Keep in mind these are my initial thoughts and they cannot be taken as anything other than ideas. In other words this is not a list of new features you can expect to see in WordPress in the near future but rather a list of features I think we should explore as we move forward.

When an image is added or given focus in the editor it should be displayed as true to final size as possible and retain proportions within the editor. All editing should happen on this image to allow the publisher to preview the result before saving.

There is precedence for this work process established by apps like Instagram, Twitter, Facebook, and Flickr, and these behaviors and user interactions have become expected from users. There is also precedence in WordPress: The ability to rotate, reflect, and crop images already exists and new features could be an extension of this same functionality.

In WordPress core new features should be limited to basic editing (contrast, lightness, black & white, standard color filters) and endpoints should be left open for plugin developers to add additional filters and editing functionalities.

Image Editing Within the Content Editor

In addition to editing and managing images through the Add / Edit Image modal window some limited editing should be available from within the content editor. In particular this could include positioning (none, left, center, right) and link-to. These capabilities would appear on hover within the editor and allow contextual WYSIWYG editing in a way we don’t have currently. This type of editing will become more important when work on front-end editing nears completion and publishers move away from the back-end editor.

The Image Adding and Editing Algorithm

While the scenarios above are not complete they provide us with a basic guideline for future development of image adding and editing in WordPress. The scenarios can be grouped into three different objectives:

  1. Adding images to posts
  2. Creating image galleries
  3. Defining Featured Images

The commonality between all of these is the optional ability to edit the images once uploaded. They are also sequential: 2 and 3 rely on 1, and in most cases a Featured Image will be selected as the last step when and if a gallery is created.

Within the Add / Edit Image modal

Looking at images as elements added to a post or page for the first time (as opposed to images selected from the Media Library) we can construct a common algorithm for all three objectives:

  1. Uploader is opened
  2. One or more images are selected and uploaded
  3. Each image is edited (cropped, rotated/mirrored, filtered, sized)
  4. Metadata (title, alternate text, caption, description) is added for each image

From this point on the procedure changes for each objective:

For single images and images displayed in groups:

  1. Image positioning (none, left, center, right) is selected
  2. Size is selected
  3. Link to is selected

For galleries:

  1. Images to go in gallery are selected
  2. Gallery is organized
  3. Captions are added to each image
  4. Title of gallery is defined (grid with column number, slideshow, other)
  5. Type of gallery is selected
  6. When-clicked action is defined

For Featured Images:

  1. Image is assigned as Featured Image
  2. Cropping option akin to cropping of header image is opened to allow the publisher to control crop (this should possibly happen for each Featured Image size).

For existing images in the Media Library the process will be much the same with the main difference that the editing in step 3 can be reapplied and only affects the new location of the image (non-recursive editing).

Share Your Thoughts, Join the Conversation, Help Shape the Future

As I said in the beginning, this is all about you, the people who use WordPress. The true value of Open Source lies in the community and its ability to contribute to and build the solutions they use. Your input matters and we want to hear it. Share your thoughts, ideas, and concerns about the current and future image editor in the comments below or on Siobhan’s post over at Make WordPress UI. And if you feel that simply commenting isn’t enough, you can join the team!

Name tag for WordCamp Seattle 2014

Web Design is a Process – Supporting Links for my WordCamp Seattle 2014 Talk

At WordCamp Seattle 2014 I did a talk titled Web Design is a Process in which I refer to a number of different services and sources. Below are all the links for easy retrieval. Prepare Git Mercurial Subversion GitHub GitHub supports viewing and diffing of PSD files GitHub for the Rest of Us BitBucket Plan […]

Simone - a free accessible responsive WordPress theme

Simone and Building WordPress Themes from Scratch Using Underscores

Over the past few weeks two major releases took place, and now it’s time to talk about them: First, the new free WordPress theme Simone announced my re-entry into the free WordPress theme space. If you’ve been following me for a while you know I’ve released free WordPress themes before and you may also know […]

Drawing of a red/green colour blind test with a logo in the middle

The accessibility-ready Tag Should Be Required for All WordPress Themes

When was the last time you tried navigating your WordPress site using only the keyboard? Chances are you never have, and if you do you are likely to have a sub-optimal experience at best. The alarming reality is only a handful of WordPress themes (and thus WordPress-powered sites) meet basic accessibility guidelines. This is not […]

A meta image for WordPress

Title, Caption, Alt Text, and Description: Harnessing the Power of WordPress Image Metadata

The Title, Caption, Alt Text, and Description fields for images in WordPress are the most ignored and underutilized features that can improve your content and bring more people to your site. Learn how to use them to create better user experiences and more attractive and compelling content.

enquire.js is like a wall in space

Using Media Queries in JavaScript with enquire.js for Responsive Masonry and More

Ever wanted to toggle JavaScript on and off with media queries only to discover you cant? Instead you have to write a huge pile of JavaScript to monitor the initial and changing document width and toggle the script on and off manually. This is cumbersome and requires an unreasonable amount of code to do something […]

Break free from inline styles in WordPress

Adding Borders to WordPress Images the Right Way – a.k.a. Why Inline Styles Have No Place In Your Posts

Much controversy surrounds the removal of the image border feature in WordPress. In this tutorial Morten Rand-Hendriksen shows you how to add image borders the correct way and also proposes a new set of standards for WordPress theme developers going forward to account for users who want borders around their images.