-
Notifications
You must be signed in to change notification settings - Fork 4.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve Publishing Flow #3496
Comments
I feel both strategies you mention could work together: a "working" state for the button, but also something in the Publishing panel. 💯 |
Tammie's journey curve is an excellent jumping off point for looking at this flow in the context of the publish dropdown. As such, I've taken that as a starting point for some new mockups around this.
2B. If at this point you uncheck the "Show this every time I publish" checkbox at the bottom, the next time you publish it's a single-click affair, with a blue button labelled "Publish":
In exploring this post-publish experience, I also tinkered with a somewhat wilder exploration. Essentially right after step 3, when the publishing process finishes, the popover slides all the way to the left, covering the entire editor, giving you option to preview the post. In a future where the post editor itself doubles as a preview this is perhaps less necessary. Nonetheless, here it is: Note these mockups use a "popover sidebar", which is a new pattern. Some concerns have been noted with this pattern compared to showing a more normal sidebar, or even a dropdown. Please share your thoughts on this, and what you see as an optimal flow, and I can provide new/updated mockups. The color change of the Publish... button I'd also like your thoughts on. Once we reach a concensus on what we think is a good approach to explore, I will update this ticket description with the "winning" mockups. Thank you, @karmatosed @mtias @folletto |
First, it's great to see this arc visualised. I raise my hand as one of those concerned with the popover sidebar. To me, it's using an existing pattern of the sidebar in a way that confuses, it's just too similar. As far as changing the color of the publish, I think that's good to do, but we should make sure color doesn't just denote the state. I really like the 'what's next' steps and think that's a great way of levelling up users and encouraging next progress on their journey. |
Given the feedback yesterday, here are a couple more iterations that center around the "sidebar" pattern. As a note on all of these:
As usual, keep in mind these are explorations. Even if it looks "final", it's subject to implementation changes and feedback. Popout/dropdown versionThis builds on the dropdown that's currently in master. Everything starts with clicking the "Publish..." button: This gets you the dropdown, which now features a green "go" colored publish button: Pressing that green publish button closes the dropdown and changes the publish button into a "Working" state, with a new label (seee #3682): Once publishing is complete, you get a popover with a post-publish experience: Publish SidebarWhen clicking the Publish button, instead of getting a popover or dropdown, the Publish button enters a "pressed" state, and a standard sidebar opens: Clicking the Publish button inside starts the publishing process: Once that's done, you get the post-publish experience: Combined popover/standard sidebarThis version looks mostly like the standard sidebar, and it also resizes the content area to not cover it. But like the Popover version, it covers the Publish button, making the next steps more clear. It also doesn't have to untoggle any Settings sidebar, since like the popover it covers it if there: Click the Publish button to start the process: Once that's done you get the post-publish experience: Summary and pros/consThe primary problem with using the normal sidebar pattern, as opposed to a dropdown or an alternate sidebar, is that it untoggles the Settings sidebar (if you have that enabled), which means that once the publishing process is done, the Settings sidebar remains untoggled even if it was on before. Another downside to using the "standard sidebar" pattern is: what happens if you close the sidebar during publishing? Maybe nothing happens, but it becomes a source of insecurity. |
I like the idea of a 'chose your own experience' here. We should consider how we can build on that in other areas. I'll skip through feedback based on both version, thanks for iterating and suggesting a few things: Popout/dropdown version
Publish Sidebar
Combined popover/standard sidebar
Total aside, what if we move the publish to the left and have a publishing area appear below that? I feel that's been explored before, but we maybe could revisit.
Yes this worries me a bit. I think that's another reason I wouldn't want the standard sidebar pattern :) I like the idea of a focused publishing flow that guides. |
Roger! From a high level view, I think either of the above is good. The reason is that I think that once we are able to cover the three different states:
we provide an excellent visual support. As such, I think my comments here tend to be less strong preferences than usual. :)
This seems something easily solvable tho: we just restore it. No? — Sidenote on something already discussed: I'm not too keen in having the checkbox to disable the dropdown, as I think it should be a structural piece of the interface plugin authors and developers should be able to build upon without fearing a user to miss important information because they disabled it. That said, I'm also very aware of previous conversations, and I think this is one of the best approaches. I'd also nudge probably to allow plugin authors to be able to force the setting. |
Doing a separate comment as this is an extra idea, and unless it's simpler than I imagine, I feel it won't be part of a MVP. Smart In-Progress StateOne of the most annoying things, especially on slow websites and sites with lots of plugins, is being stuck with an indeterminate loader and no information of what's going on for sometimes as long as half a minute (try plenty of publishing related plugins that do operations on external APIs...). If we have a popup or a sidebar (or else!) that have the space, would be amazing if we could show at which stage the post publication is. For example, it could be that the user in order gets these messages:
(This is of course just an example, and assumes some plugins installed). This would probably require some API changes, but would make the entire process less of a black box. If would also have more benefits:
Would it make sense as idea? |
Love your feedback as usual, Davide. 🥇
These two feel related to me, and they are why I personally have a preference for a sidebar, either the popover version or the combined popover/standard sidebar (because they both cover the publish button, fixing some headaches). Especially the end state, the post-publish experience, is where I think we and plugins especially, can provide huge value (your second comment highlights this). If we were to have this happen inside the publish dropdown, it would have to change the contents, which would be super weird. As such, I don't think we can have a post-publish experience, and only use the dropdown version, we'd have to invoke a sidebar or a modal when publish finishes, whereas with all-sidebars, at least we'd only use one pattern for it, even if that pattern was new.
Well, yes, with smarts. I.e. we'd have to account for situations where the user has dismissed the sidebar, so we don't restore it, and also situations where a plugin has registered a sidebar, so we restore the right one. Even if we built those smarts, when I walk through the flow in my head, it makes the sidebar feel fragile. Like, we have this lovely toolbar "anchor" to indicate the sidebar, but if it toggles on and off on its own, feels like it could introduce an insecurity around it. Whereas if we had one of the sidebars that simply covered the sidebar, it wouldn't matter which sidebar was there before, or even whether it was toggled off or on. |
So to resurrect this thread, I chatted a bit with @karmatosed today, and decided it was worth trying to move forward with a slightly simpler version of the Combined popover/standard sidebar. The way it would work is, it's a popover in that it covers the publishing button, but it's also a sidebar in that it pushes text in. It animates in from the right, very very quickly, and animates back out when dismissed. It has smarts in that:
Implementation note: whether this publish sidebar untoggles any active sidebar and toggles it back on when publishing is complete, or whether it just covers any existing sidebars, that doesn't matter so long as the smarts mentioned above work. There are 3 steps:
Steps 1 and 3 can hold plugin options. Step 1 holds an "opt out" of this publishing experience, just uncheck it at the bottom. If you opt out of this, there's an option to bring it back in the ellipsis menu (same as there's an option to fix the toolbar to the block). Mockups 1: Click the Publish... to get this 2: Clicking Publish! gets you this: 3: Once publishing is done, you get this: |
I really like this @jasmussen and feel it's a solid place to iterate on. This meets all the feedback and finds a great balance. Looking forward to seeing this coded up! |
YES. Agreed. Just one tiny minor note: I understand why the "Publish" button is where it is... but it feels a bit hanging? |
I agree with this, and I'm flip-flopping. I feel like either it should be "in place" as is, or it should be moved down as it was in earlier mockups. I also feel like this is one thing we can try in implementation: sort of take it from there, see what feels right. |
@jasmussen Nice work. I think this is a good incremental improvement and answers many of the criticisms from other issues like #3279 and others i.e.
Possible criticisms
|
Possibly not, and Davide above raised the same question. I think this is something that will make itself fairly obvious fairly quickly as soon as we try it in practice, and there are good plan B's in case we decide it's unobvious. Such as moving the 2nd confirm publish button, and/or changing colors in between.
Were you looking at the latest mockups in this comment? The color is the same there, and it takes from the wp-admin.
Possibly, definitely something we'll observe in tests, and definitely open to tweaks in implementation. We want to find a balance between making it easy for people to opt out if that's what they prefer, and not making it a permanent nuisance for people to do not opt out. |
Having to click the same Publish button twice, is even worse than the original implementation of two Publish buttons. If I uncheck that 'Show this every time ' checkbox, then presumably, that panel no longer displays. If that panel doesn't display, I no longer have access to the Publish or Visibility controls. What happens when I have a page that I decide that I want to unpublish or I want to schedule the publishing of? I can't, because I no longer have access to those options. How do I get the Panel back if I change my mind or if someone clicked it accidentally? Is there a option somewhere on one the Settings pages, so that I can reset it? Does that checkbox stop this panel from displaying when publishing a page or only when updating an already published page? Or Both? It's not clear which workflow it affects. What happens when a plugin (e.g. yoast) decides to add some functionality into that sidebar section, and I've already unchecked that checkbox. I'd never see it. There are so many issues with this implementation. |
I will copy my response from here, for folks following both threads.
Those are still in the Settings sidebar. This is a "last minute checkup".
I was thinking something like this:
In the flow detailed in #3496, the publish confirm popover does not show, ever, for when you update a page. Probably doesn't show for scheduling one either. It only shows when the button is labelled "Publish...". And if you check the opt-out box in the publish confirm flow popover, you won't see it until you manually enable it in the ellipsis menu again.
That's right, if a plugin adds content to the publish confirm screen, and you opt out of that, you won't see it. Same as if you hide a plugin metabox using Screen Options. |
Thanks for clarifying those points. |
Just to remind all of this should be easily operable with a keyboard 🙂 Will open a specific issue. |
Worth adding into this would be removing duplicate behaviour like visibility and post format selection. We shouldn't have those showing in the document settings and the publishing flow. |
I think this was incredibly true when we had the _popup_version, where you could end up in situations with the sidebar open showing visibility and post format, and the popup open covering that, also showing visibility and post format. However given the new flow that has a sidebar that covers the content of the Settings sidebar entirely, we go back to the original "publish confirm" ideal where we use this area to show last minute checkup information before final publish. Given that this sidebar covers the underlying sidebar, whether there or not, I feel, addresses that duplicate information issue. Furthermore, by keeping the information both in the Settings sidebar, and in the publish confirm dialog, we embrace both those who prefer to configure these settings before starting the publishing flow, those that do it intentionally while publishing, as well as those who simply forgot to do it until the publishing flow. |
I agree. As well as since there's a flag to turn it off, duplication is a necessity. |
This is a stellar improvement over the dropdown, nice work! In terms of how plugins can integrate, and ways to solve the double-clicks on buttons and such, I have some ideas, but I'll sketch out those iterations once this is merged and tested. :) |
For various reasons, publishing can take some time to finish. Right now this is the state we show:
The UI can seem frozen during that time, which is disconcerting. One thing we did in the Calypso editor was having a "busy button" state, so that the publish button, instead of changing to a disabled "update", better communicates that something is happening.
Might be interesting to also explore something in the publish flow popover instead of dismissing it.
cc @jasmussen @karmatosed @folletto
The text was updated successfully, but these errors were encountered: