Another thing that came up from formal usability testing was form redirects.

For example. Check what happens when you submit the following forms:

node/add
admin/user/user/create
admin/content/taxonomy/1/add/term
- any other form which adds or edits stuff

Some show you what you just added, some take you back to the form to add another one.

Testing was inconclusive about which is preferred. One person adding a user wasn't sure they'd actually created the user. One person adding three taxonomy terms was really happy they could add another term straight after submitting the first one.

Either way, we should probably try to standardise this a bit. Views 1 has a "save and edit" button, which I tend to use a lot (although probably won't need now there's live previews in views 2), I've also seen "save and add another" buttons somewhere. Another CMS I've had to use has separate "save" and "publish" buttons, which is a whole different issue, but we need something that's both predictable and can also be extended.

Overall, I'd much rather less clicks for repetitive tasks (even if it means an extra button), than the "save, find in a list, click a link just to edit a typo" approach, but otherwise I don't have many ideas on this. If I get time later, I'll have a look through core to see what the various behaviours are.

Comments

Bojhan’s picture

Catch, are there any guesses on how many users repeat a task (contextually)? We could just display the changes, and get a related link up there (wordpress does that slightly).

catch’s picture

Not as far as I know. When you say "just display the changes" do you mean redirect back to the form, but have the changes in a drupal_set_message?

Another thing to consider - the modules, blocks and IP address forms also go back to themselves, in this case the settings and the form are the same page.

Bojhan’s picture

I do mean redirect back to the form, but have the changes in a drupal_set_message.

If the usual behaviour in Drupal is to go back to the form we should consider approaching it as a standard. However in context, when you create a page, usually you don't intend to create another page and want to see the page you created. So I think you should approach this standard with quite some context.

catch’s picture

Since node creation is a 'non-admin' task, I think we could make an exception. Similarly, editing nodes and user account information might want to go to the view page after submission too. Better DSMs, maybe with links to stuff that's been created (i.e. add user form), ought to cover the feedback aspect. So I guess what's left is working out which forms currently redirect to where.

Bojhan’s picture

I just went trough quite a lot, I put a * to where I found the feedback aspect confusing (ie not going to the item in the list, or the feedback line not saying what changed - no feedback) or the interaction having weird workflow.

View page after submission, pretty much means either going to the actual created node(if this applies) or the admin list view for taxonomy for example.

I put Drupal Set Message, where you get redirected to the form.

Content Management
Content Type > View page after submission
Post Settings > Drupal Set Message*
RSS publishing > Drupal Set Message*
Taxonomy
Add vocabulary > View page after submission
Edit vocabulary > View page after submission*
Add term > Drupal Set Message*

Site Building
Blocks
Add Blocks > View page after submission*
Edit Block > View page after submission*
Menus
Add Menu >View page after submission (not Menus but the added menu)*
Add item > View page after submission (not Menus but the added menu)
Edit Menu > View page after submission (not Menus but the added menu)*
Themes
Configure > View page after submission*

User Management
Acces Rules
Add Rule > View page after submission
Check Rules > Drupal set message*
Roles (Completely other interface pattern?)
Add Role > Drupal set message*
Edit Role > Drupal set message*
User Settings > Drupal set message

This is as far as I got for today.

catch’s picture

@Bojhan - it looks like you're going through Drupal 6. For a start, access rules was removed from core a few weeks ago, and some other administration may already have changed too, so would be better to do this with D7.

Bojhan’s picture

I will cross check. Most forms seem to supply no actual feedback, only say stuff as : it has changed, not saying what has changed.

kika’s picture

Component: forms system » usability
alexanderpas’s picture

i think the solution is multiple buttons, depending on the situation...

"save and return to overview" will take you back to the overview after saving the current input.
"save and view item" will take you to the view of the item.
"save and add another" will take you back to the form after saving the current input.

ofcourse, every option gives a (green) message confirming the action succeeded

Bojhan’s picture

Alexander Pas, although adding this function obviously might seem the best way to handle this issue. It might be more considerate to avoid anything that adds functions to a form unless its really necessary. Because almost all the buttons you suggested are highly situational(especially the last one). Giving people this options, breaks with conventions in normal form use and gives them another choice, if we make the choice for them with the best intend in mind I think the forms will do just fine. Because for most of the forms we are working with we can guess whether they want to see the item or return to overview.

alexanderpas’s picture

exactly those points that are problematic require that solution...

the points that have an obvious destination don't need this functionality...

remember... usability IS important!

however... the core solution is to ALWAYS give FEEDBACK after submitting a form... (drupal_set_message)
maybe that needs to have an additional state... confirmation!

Bojhan’s picture

Component: usability » base system
Priority: Critical » Normal
Issue tags: +Usability

We found this in Baltimore as well, however it wasn't conciderd a really big problem.

Tor Arne Thune’s picture

Version: 7.x-dev » 8.x-dev

Still a valid issue after the release of 7.0. Moving to 8.x.

jhedstrom’s picture

Issue summary: View changes

#210974: Add a new node link after submitting a node seems related. The approach there would strike a compromise between redirecting to new content, or back to the add new content page.

Version: 8.0.x-dev » 8.1.x-dev

Drupal 8.0.6 was released on April 6 and is the final bugfix release for the Drupal 8.0.x series. Drupal 8.0.x will not receive any further development aside from security fixes. Drupal 8.1.0-rc1 is now available and sites should prepare to update to 8.1.0.

Bug reports should be targeted against the 8.1.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.2.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.1.x-dev » 8.2.x-dev

Drupal 8.1.9 was released on September 7 and is the final bugfix release for the Drupal 8.1.x series. Drupal 8.1.x will not receive any further development aside from security fixes. Drupal 8.2.0-rc1 is now available and sites should prepare to upgrade to 8.2.0.

Bug reports should be targeted against the 8.2.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.3.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.2.x-dev » 8.3.x-dev

Drupal 8.2.6 was released on February 1, 2017 and is the final full bugfix release for the Drupal 8.2.x series. Drupal 8.2.x will not receive any further development aside from critical and security fixes. Sites should prepare to update to 8.3.0 on April 5, 2017. (Drupal 8.3.0-alpha1 is available for testing.)

Bug reports should be targeted against the 8.3.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.4.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.3.x-dev » 8.4.x-dev

Drupal 8.3.6 was released on August 2, 2017 and is the final full bugfix release for the Drupal 8.3.x series. Drupal 8.3.x will not receive any further development aside from critical and security fixes. Sites should prepare to update to 8.4.0 on October 4, 2017. (Drupal 8.4.0-alpha1 is available for testing.)

Bug reports should be targeted against the 8.4.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.5.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.4.x-dev » 8.5.x-dev

Drupal 8.4.4 was released on January 3, 2018 and is the final full bugfix release for the Drupal 8.4.x series. Drupal 8.4.x will not receive any further development aside from critical and security fixes. Sites should prepare to update to 8.5.0 on March 7, 2018. (Drupal 8.5.0-alpha1 is available for testing.)

Bug reports should be targeted against the 8.5.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.6.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

pieterdc’s picture

So many years later, these inconsistencies still exist.
While some consider this non critical, there's no denying in that it's very confusing for anyone using the UI.

These are a bunch of different form destinations I noticed while quickly testing current Drupal 8.6.x:
Go back to overview

  • add media type
  • add custom block via this path
  1. go to admin/structure/block/block-content
  2. click '+ Add custom block'

Go back to parent overview

  • add menu link via this path
  1. go to admin/structure/menu
  2. click 'Edit menu'
  3. click '+ Add link'

Stay on the edit form

  • add menu link via this path
  1. go to admin/structure/menu
  2. click 'Add link' from the Operations dropdown with a menu
  • add custom block via this path
    1. go to admin/structure/block/block-content
    2. click 'custom block' in the Empty message "There are no custom blocks available.Add a custom block."

    Go back to creating another entity of the same type

    • add taxonomy term

    Go to frontend view of entity

    • add content
    • add media

    So the question from this issue remains:

    Where do forms redirect to?

    This issue would benefit from someone reading through all the comments, summarize and add feedback to that.

    catch’s picture

    Version: 8.5.x-dev » 8.6.x-dev

    Drupal 8.5.6 was released on August 1, 2018 and is the final bugfix release for the Drupal 8.5.x series. Drupal 8.5.x will not receive any further development aside from security fixes. Sites should prepare to update to 8.6.0 on September 5, 2018. (Drupal 8.6.0-rc1 is available for testing.)

    Bug reports should be targeted against the 8.6.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.7.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

    Version: 8.6.x-dev » 8.8.x-dev

    Drupal 8.6.x will not receive any further development aside from security fixes. Bug reports should be targeted against the 8.8.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.9.x-dev branch. For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

    Version: 8.8.x-dev » 8.9.x-dev

    Drupal 8.8.7 was released on June 3, 2020 and is the final full bugfix release for the Drupal 8.8.x series. Drupal 8.8.x will not receive any further development aside from security fixes. Sites should prepare to update to Drupal 8.9.0 or Drupal 9.0.0 for ongoing support.

    Bug reports should be targeted against the 8.9.x-dev branch from now on, and new development or disruptive changes should be targeted against the 9.1.x-dev branch. For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

    Version: 8.9.x-dev » 9.2.x-dev

    Drupal 8 is end-of-life as of November 17, 2021. There will not be further changes made to Drupal 8. Bugfixes are now made to the 9.3.x and higher branches only. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

    Version: 9.2.x-dev » 9.3.x-dev

    Version: 9.3.x-dev » 9.4.x-dev

    Drupal 9.3.15 was released on June 1st, 2022 and is the final full bugfix release for the Drupal 9.3.x series. Drupal 9.3.x will not receive any further development aside from security fixes. Drupal 9 bug reports should be targeted for the 9.4.x-dev branch from now on, and new development or disruptive changes should be targeted for the 9.5.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

    Version: 9.4.x-dev » 9.5.x-dev

    Drupal 9.4.9 was released on December 7, 2022 and is the final full bugfix release for the Drupal 9.4.x series. Drupal 9.4.x will not receive any further development aside from security fixes. Drupal 9 bug reports should be targeted for the 9.5.x-dev branch from now on, and new development or disruptive changes should be targeted for the 10.1.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

    Version: 9.5.x-dev » 11.x-dev

    Drupal core is moving towards using a “main” branch. As an interim step, a new 11.x branch has been opened, as Drupal.org infrastructure cannot currently fully support a branch named main. New developments and disruptive changes should now be targeted for the 11.x branch. For more information, see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

    Version: 11.x-dev » main

    Drupal core is now using the main branch as the primary development branch. New developments and disruptive changes should now be targeted to the main branch.

    Read more in the announcement.