WordPress 3.6: Revisions
Revisions are an extremely powerful tool for content tracking, but there are a few parts that need a little TLC. Ever since they were first introduced, there’s been a problem with proper author attribution on revisions (see #16215), and we’re going to take a crack at fixing that in 3.6. Additionally, while the current diffs are pretty cool, and make a lot of sense to those of us that look at diffs everyday, there’s a lot of room for improvement for your average user. We’d like to see some UI improvements around the diffs as well as information that makes more sense to an average content creator (words changed, a visual representation of what was added/removed, prettier output, etc).
@markjaquith and I chose @westi to lead this. I’m excited to see the improvements on this one! There’s a little of everything in this project, so please leave a comment if you’re interested in lending a hand.
Alex Mills (Viper007Bond) 11:25 pm on January 7, 2013 Permalink
It’d be nice to have revisions also include post meta and taxonomy data so that when restoring to a previous revision, the whole post’s state could be restored.
Aaron D. Campbell 11:35 pm on January 7, 2013 Permalink
We actually categorized that under the Edit Flow feature, but there’s definite overlap there. see: #20299
Alex Mills (Viper007Bond) 11:36 pm on January 7, 2013 Permalink
Nice, thanks.
Chris Scott 4:01 pm on January 8, 2013 Permalink
We created a plugin to do meta and taxonomy revisions which may be useful for some ideas.
adamsilverstein 11:28 pm on January 7, 2013 Permalink
i’d love to help with this.
Peter Westwood 9:35 am on January 8, 2013 Permalink
Great
Rafael Ehlers 11:31 pm on January 7, 2013 Permalink
And make define(‘WP_POST_REVISIONS’, false); works!
Aaron D. Campbell 11:40 pm on January 7, 2013 Permalink
What doesn’t work about that?
Rafael Ehlers 1:47 am on January 8, 2013 Permalink
It doesnt disable at all
Aaron D. Campbell 1:57 am on January 8, 2013 Permalink
I just tested on a local install and it worked as expected (turned off).
karmatosed 11:32 pm on January 7, 2013 Permalink
I’d love to help from a UI angle on this.
Peter Westwood 9:35 am on January 8, 2013 Permalink
Looking forward to have some UI support – I have a few ideas I would love to see visualised
karmatosed 9:55 pm on January 8, 2013 Permalink
Yay
Erick Hitter 11:58 pm on January 7, 2013 Permalink
I’m very interested in helping with this.
zippykid 12:32 am on January 8, 2013 Permalink
+1
janw.oostendorp 1:49 am on January 8, 2013 Permalink
A suggestion. Can revisions be stored like only save one revision a day per post? Most of the time I would want to restore a revision I already overridden the nr I’ve set on that day. So I can’t go back to yesterday.
Maybe save all revisions of this day and 1 for every day that is defined in `WP_POST_REVISIONS`.
Just a suggestion.
Peter Westwood 9:38 am on January 8, 2013 Permalink
This sounds like an interesting idea. I think our primary drive will be around the presentation and making it much more user friendly.
It may be that we can alter the presentation to provide a less verbose history by default with only one revision per day highlighted while keeping the full history as well – the full history is really useful in the context of one of the key theme of 3.6 – never lose your content.
Curtiss Grymala 4:22 pm on January 8, 2013 Permalink
While I think this is an interesting idea, I think it might be just as helpful (more helpful in my use-cases) if revisions were actually systematically compared at some point, and identical revisions were either dumped or not highlighted.
For instance, let’s say I go in to look at a post (for instance, to copy a shortcode I used in it, etc.) and then, out of habit, click “Update”. Although I didn’t change anything in the post, WP stores a separate revision for that update, and shows that in the list of revisions. It would be nice if WP was able to compare that version to the previous version, recognize that nothing changed, and downgrade that revision somehow.
I think, either way, we would need to look at somehow classifying revisions (possibly with a +1 or -1) to differentiate between revisions that should be highlighted (for reversion purposes) and those that are just stored for record-keeping (basically just to know when someone accessed the edit page for that post).
wedi 7:17 pm on January 9, 2013 Permalink
That is really a big point. It’s quite annoying to click through several revisions to find the last real change.
esmi 2:53 pm on January 8, 2013 Permalink
Can some of the accessibility issues associated with revisions also receive some attention? Specifically, the Compare Revisions table.
1. As this is a form, each of the radio buttons needs an associated label. By all means, position the label offscreen if you must but without those labels, the form is virtually impossible to use in some situations.
2. Can we have unique text for each of the Restore links? Again, position the unique fragment offscreen if necessary but handful of identical-sounding links creates major problems for some users.
3. Ideally, get rid of the table markup. Forms + tables = accessibility problems for many users.
Peter Westwood 10:55 am on January 9, 2013 Permalink
We will definitely look at the issues you have highlighted and see how we can best address them.
lessbloat 9:27 pm on January 8, 2013 Permalink
Thought I’d play with some visual indicators showing whats changed between diffs, so at a glance you can see: “Oh ya, this is the one where I just removed on line”, or “this is the one where I removed 5 paragraphs”.
Option 1
Option 2
Option 3
Option 4
Hat tip to MarkJaquith for the concept.
Aaron D. Campbell 9:33 pm on January 8, 2013 Permalink
I really like it. Personally I think the bars are more user-friendly than the raw numbers, but I don’t have much preference between those three.
karmatosed 9:58 pm on January 8, 2013 Permalink
I like the bar dots the most but my worry about any graphical indicator like that is a ‘what does it mean’. 3 red dots to me or a lump of a bar isn’t as instantly recognisable maybe to all users. I guess my question would be: “Is it important to know what of what”? If that’s the case then a number is far more indication. If a vague idea is all that’s needed then exacts aren’t as required.
Worth exploring around other ways of representing I think aside from ones that require more maybe guess work as to what % of what?
GrahamArmfield 10:10 am on January 9, 2013 Permalink
As a sighted person a visual representation can sum up a concept neatly. Unfortunately not everyone is sighted or has clear sight. Using colour as the only way to convey meaning can also be problematic – especially in your choice of red/green. Some 8% of men and 2% of women are colourblind – with red/green colourblindness being the most common.
Any solution like this needs to also include plain visible text to indicate what the bars mean. I’d especially echo karmatosed’s point – will even all sighted users understand what’s being represented here. And how would the dots/lines represent removing some characters and adding some different ones?
Peter Westwood 10:57 am on January 9, 2013 Permalink
These are neat and address a piece of the UI that I hadn’t even considered improving yet
If we don’t focus on trying to condense the visualisation of the whole diff down into some coloured fragments are there ways in which we can highlight if the diff is a large or small change well?
wedi 7:18 pm on January 9, 2013 Permalink
That is great! An indication if the content or just meta data was edited would be very useful, too.
ArielK 7:48 pm on January 9, 2013 Permalink
I like “option 1″ it’s very clear & simple.
Sam Parsons 11:06 pm on January 10, 2013 Permalink
Here’s an idea of a mockup that would show both visually and give some words to explain to those not accustomed to this type of image and to those who have visual impairments (either color-blindness or others).
Peter Westwood 1:30 pm on January 11, 2013 Permalink
This is quite neat, I wonder if this is too specific though
What people probably want to know is things like:
It will be interesting if we can present something more like a graduated size of change metric which has more end-user meaning that something very technical like word count – especially when word counting is so hard to get write in some situations like some asian languages.
karmatosed 1:07 pm on January 18, 2013 Permalink
I had a bit of an experiment around this area. One thing that struck me was how small the content is for that wide area. It perhaps means we can use that area to give more information – people seem to be saying different information is useful to different users so perhaps just saying the time, who and an indicator isn’t enough.
I also thought a bit about how things like commit messages and ways and along with different representations came up with the following.
I know it’s very different from what have now it’s more just an exploration of a few things and doesn’t have to all be used.
karmatosed 1:09 pm on January 18, 2013 Permalink
I just realised that squashed it down a bit in the message so here is the original linked to see it a bit more clearly:
karmatosed 1:25 pm on January 18, 2013 Permalink
I also did a different exploration using bars.
esmi 11:33 am on January 9, 2013 Permalink
If you’re going with the red/green combination, please consider using numbers – not bars. http://quirm.net/temp/red-green.png shows the display as it would be seen by those who suffer from 2 out of 3 of the known forms of color blindness. Using numbers would also by-pass any issues for non-sighted users and give everyone a clear indication of the changes made.
Siobhan 3:07 pm on January 10, 2013 Permalink
In terms of writing, numbers are much more useful as they provide context. Also, word count is more useful than character count.
talgalili 10:51 am on January 12, 2013 Permalink
Hello all,
I would like to ask for another feature:
When comparing two revisions, allowing a reviewer to have an “accept/reject” for each section changed (in a similar way as offered by libre-office or MS-word), which at the end of it will create a new revision.
Background story for the request: I recently had the need for such a feature, since I have three friends working on the same post, where one is more “senior”. The senior friend wanted to be able to accept/reject changes by the other contributors. Since this was not an option in WP, we decided to do the first draft of the post in word, and exchange it by e-mails.
Thank you all for taking on work at this front
Cheers,
Tal