Problem/Motivation

Adding content is a critical function in Drupal. While we have added a tools block and a default shortcut for this EVERY OTHER MAJOR CMS puts an add or create content link in the MAIN toolbar. This is marked critical because it is a critical usability problem in Drupal that a new user has to hunt around just to find where to do the most fundamental thing that a CMS does; create content.

Proposed resolution

The optimal solution would be to make "Add content" a primary toolbar item using hook_toolbar() with a tray for the available types.

Remaining tasks

Write new patch.

User interface changes

The item 'add content' would appear in the top toolbar.

API changes

?

Data model changes

Files: 
CommentFileSizeAuthor
#31 add-content-list.png20.66 KBifrik
#29 toolbar-add-content-mobile.png31.45 KBVic Luijkx
#29 toolbar-add-content-desktop.png82.78 KBVic Luijkx
#24 add-content-in-toolbar.png56.29 KByoroy
#11 2377543-navbar-add-content-11.patch652 bytesElijah Lynn
#10 2377543-navbar-add-content-10.patch2.2 KBElijah Lynn
#1 navbar_add-content-submenu_2377543_1.patch2.1 KBbreathingrock
FAILED: [[SimpleTest]]: [PHP 5.4 MySQL] Unable to apply patch navbar_add-content-submenu_2377543_1.patch. Unable to apply patch. See the log in the details link for more information. View

Comments

breathingrock’s picture

FileSize
2.1 KB
FAILED: [[SimpleTest]]: [PHP 5.4 MySQL] Unable to apply patch navbar_add-content-submenu_2377543_1.patch. Unable to apply patch. See the log in the details link for more information. View
hass’s picture

Version: 7.x-1.4 » 7.x-1.x-dev
eshta’s picture

Status: Active » Postponed

This isn't the functionality in Drupal 8 that I'm aware of. Navbar functions as a backport of the Drupal 8 toolbar. You should open up an issue there to determine whether this should be added.

cweagans’s picture

Leaving a note for myself, as I might come back to this: at a minimum, the drupal_alter() should go in so that we can do this in our own module if we want to. If that alter is not available upstream, I'll submit a patch to add it and then do the backport here.

hass’s picture

Project: Navbar » Drupal core
Version: 7.x-1.x-dev » 8.0.x-dev
Component: Code » toolbar.module
Issue tags: +Needs backport to 7.x

Moving for decision making to D8. Please move back once done or just close if we do not like to implement this at all.

xjm’s picture

Issue tags: -Needs backport to 7.x +needs backport to D7
Elijah Lynn’s picture

Status: Postponed » Needs review

Unpostponing per #3 since the issue was moved to core.

Status: Needs review » Needs work

The last submitted patch, 1: navbar_add-content-submenu_2377543_1.patch, failed testing.

Elijah Lynn’s picture

Status: Needs work » Active

I guess technically this should just be active since the original patch was for Navbar, not toolbar.module and there is nothing to review other than decide if this is functionality that has the chance of getting into core.

Elijah Lynn’s picture

For the interim, we are maintaining this patch (and need somewhere to link to) and here is a reroll for Navbar 7.x-1.6. I am wondering if maybe I should just break it out into a contrib module called navbar_add_content or something like that. Don't want to pollute the namespaces too much though. I do think others could use this so don't want to keep it custom if I don't have to.

7.x-1.5 broke #1 because it changed the menu class to be navbar-menu vs just menu as to not conflict with core.

The interdiff looked like $#!t so I left it out but the only lines that really changed were 551-558.

Elijah Lynn’s picture

Okay, since it is unlikely to get this functionality added to Drupal Core how about adding this a hook_navbar_menu_tree_alter() so we can make a custom or contrib module to do this?

Anyone object if I move this back to Navbar issue queue?

Elijah Lynn’s picture

Whoops, I didn't realize what needs to happen. @cweagans explained it to me. So ignore #11. We need to first roll a patch to bring the alter hook into D8 and only then, once it is committed will it be a candidate for Navbar. Since "add content" was never a thing and Admin Menu just made us feel like it was standard this never was actually in core. Further, since Toolbar is horizontal only (Navbar is horizontal or vertical) it doesn't ever show multiple levels of menu so the "add content" doesn't make sense to bring into core. Only the alter hook is a candidate now.

Elijah Lynn’s picture

I totally mispoke in #12 when I said it is horizontal only, it definitely is vertical as well. Not sure what I was smoking ;).

That being said, if #2395797: Allow defaulting toolbar tray to vertical orientation with configuration gets in then it may make sense to add the "Add content" to core. Is there any reason why this would be a bad idea? I feel like it is one of those things that would have already been there but it isn't because there was an issue with that functionality.

Elijah Lynn’s picture

webchick’s picture

Category: Feature request » Task
Priority: Normal » Major
Issue tags: +UMN 2015
Parent issue: » #2497361: [meta] Fix issues found during UMN Usability Testing 2015
Related issues: +#1852346: Toolbar UI regression: shortcuts and menu not visible at same time

This came up during usability testing. People had a much harder time finding the place to add content than in D7's testing.

webchick’s picture

Also please note that this might not be the way we want to solve this, but it is one possible way.

tkoleary’s picture

Adding content is a critical function in Drupal. While having a sub-menu where "add content" can be accessed is better than nothing, it's not optimal.
The optimal solution would be to make "Add content" a primary toolbar item using hook_toolbar() with a tray for the available types.

Immediate access to the types also cuts out an extra click.

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.

tkoleary’s picture

Version: 8.2.x-dev » 8.3.x-dev
Priority: Major » Critical
Issue tags: +Usability, +sprint
catch’s picture

Priority: Critical » Major

There's no justification in your comment or the issue summary for why this is critical.

tkoleary’s picture

Title: Add "Add Content" submenu to navigation. » Add "Add Content" item to navigation.
Priority: Major » Critical
Issue summary: View changes
tkoleary’s picture

Title: Add "Add Content" item to navigation. » Add "Add Content" item to toolbar.
yoroy’s picture

FileSize
56.29 KB

I think that during analysis of the latest usability test it was decided that even UX criticals would be marked as major but I'm not sure.

So something like this? Not an actual design for the icon (do we have one?) but in this position in the toolbar.

vaplas’s picture

Priority: Critical » Major

Sorry for this friday's post, but for me this issue has status between Normal and Minor. #2634854: Add "Admin Toolbar" module to core toolbar is realy should be Triaged Critical :)

even UX criticals would be marked as major

+1. Do not misunderstand me, please. I love UX and i'm very grateful to @tkoleary and everyone who care about it. But AFIAK, critical - this is a problem that we can not get around. But we can get around UX problem always.

Comeback status to Major based on #21, #24, #25 and on the fact that with the critical issues is working less people :)

tkoleary’s picture

@yoroy

I like that. But should it be a plus icon? Pencil is more edit existing right?

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

Drupal 8.3.0-alpha1 will be released the week of January 30, 2017, which means new developments and disruptive changes should now 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.

yoroy’s picture

Issue tags: +Needs design
Vic Luijkx’s picture

I came across this issue and started experimenting using the plus icon.

toolbar-add-content-mobiletoolbar-add-content-desktop

ifrik’s picture

I agree that at the moment we don't have any obvious way of adding "content".

But, I think we need to define what the toolbar is for, before starting to add other functionality to it. A few weeks ago another module put a Save button in there. So unless we get some clarity - and some UI standards - this will turn into a free for all and a completely cluttered toolbar.
My understanding is that the different items in the toolbar basically change the "mode" the user is in: whether to manage the site, to do something with your own user account, to switch to a different mode to place blocks, or to go back to the front end of the site. None of that are shortcuts to individual actions.

We also need to take into account that "content" by now is more then what is provided by the node module. With media in core we already have one other content entity in core.
Contrib modules also provide content entities (for example products) and we provide users with the an easy way to create Custom Entities.
So we should rather think of a consistent way that allows users to find where to add any type of content. Currently this is per entity type (nodes on the Content page, media on the Media page). This is apparently not sufficient, and with current structure of the Content menu item, adding a media item is at least 4 clicks away from any front end page. But just adding a link to "/node/add" at some top level would only solve this for node content.

Maybe a better idea is to add a generic "Add content" item that opens a list that contains all links to any of the pages where the user can add a content entity.
This would allow sitebuilders later to configure that list as appropriate (for example instead of "Add content" "Add article", "Add basic page", "Add video").

I'll add a mockup later.

ifrik’s picture

FileSize
20.66 KB

See mockup:

In this case the items "Add content" and "Add media" would be in a new menu, which allows other modules to place pages in it and sitebuilders could customize it. (For example to list the individual content types instead)

It would also allow for adding submenu items - depending on what users want to do with it.

ifrik’s picture

As discussed during UX meeting:
The menu links should be "Add content" and "Add media" on the landing page as well.

I'll make a patch for it to work with for further exploration.

webchick’s picture

Talked about this on today's UX meeting. Looks like we still need some more design exploration, and a patch to prototype the behaviour so we could play around with it in "real life" would be awesome!

Another thing to figure out: Do we want to do this "just" for content, or do we want to apply the pattern to other items in the toolbar (e.g. Users)?