Deprecate and move to contrib the "View the administration theme" permission

Created on 9 February 2024, 10 months ago
Updated 25 April 2024, 8 months ago

What is the problem to solve?

During πŸ“Œ Drupal Usability Meeting 2024-02-09 Needs work (while reviewing an unrelated issue) it was noted that the "View the administration theme" permission is increasingly less relevant and more likely to result in confusion.

The description text of this permission reminds one of a time where Drupal sites did not have a separate administration theme by default "This is only used when the site is configured to use a separate administration theme on the Appearance page.".

In modern Drupal, sites almost always have a separate admin theme and increasingly this will be Claro, which ships with Core and is on by default. So when the administrator is setting up additional roles, they likely want those other roles to be able to access some areas of the admin UI (for example content creation). A situation could easily arise where the administrator doesn't realize they need to enable this permission on each new role and so could easily be confused when they discover that those new roles do not see the admin theme when accessing the admin UI.

With work being done on the new Navigation, the initial work on Dashboards, changes to the Field UI, among others; We are increasingly taking a more thoughtful approach with the admin UI, and are designing with the assumption in mind that the site will be using Claro (or Gin).

With the concept of the admin UI becoming increasingly coupled to the admin theme, the idea that a user who has access to admin UI pages would not be using an admin theme, is no longer something that we design for. In other words, we now design with the assumption the user is using Claro, not the other way around.

All this is to say, the out-of-box core experience should enable and showcase, not hinder, the admin UI. The "View the administration theme" permission could be seen as a barrier to that, adding an easily forgotten extra step that the administrator has to go through when creating a new role. The result of which could be confusion and frustration when the administrator does not realize they need to enable this permission on each role. Contributing to the perception that Drupal is not easy to use of the box.

Who is this for?

This is for site builders and administrators.

Result: what will be the outcome?

The proposal is to deprecate this permission, and move it to a contrib module.

As describe earlier, this permission is increasingly becoming an edge case. While there may be use cases for this permission, it is likely that those would be satisfied by moving this permission to a contrib module. The idea being that, because (say) 90% of sites will always have this permission on for (almost) all roles, for the sites who explicitly want to "turn off" the admin UI for a specific role, that would be a known business requirement and so those sites would actively seek out a solution.

An example of a site with a specific business requirement was described in comment #2, where a Drupal Camp website has a "speaker" role and that role has permission to create session nodes, but that creation is done using the front-end theme.

How can we know the desired result is achieved

The problem could be validated by usability testing and user feedback.

🌱 Plan
Status

Active

Component

Idea

Created by

πŸ‡¬πŸ‡§United Kingdom AaronMcHale Edinburgh, Scotland

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • Issue created by @AaronMcHale
  • πŸ‡ΊπŸ‡ΈUnited States mherchel Gainesville, FL, US

    We use this permission on https://fldrupal.camp. Our use case is that we let users with a "speaker" role submit session nodes. But when submitting this node, we want them to stay within the current frontend theme. So to do this, we removed the permission for "View the administration theme" for this role.

  • πŸ‡¬πŸ‡§United Kingdom AaronMcHale Edinburgh, Scotland

    Thanks Mike. I've added that use case as an example in the issue summary of a site where there is a specific business requirement to not show the admin theme for a particular role.

  • πŸ‡ͺπŸ‡ΈSpain penyaskito Seville πŸ’ƒ, Spain πŸ‡ͺπŸ‡Έ, UTC+2 πŸ‡ͺπŸ‡Ί

    I don't think that this could be feasible and support Mike's case unless the Appearance setting "Use the administration theme when editing or creating content" has more granularity (e.g. per entity_type/bundle)

Production build 0.71.5 2024