Login page displays the admin theme logo
Description of the bug
When you show the Simplified login pages introduced in Backdrop 1.30.0 and use the admin theme for those pages, the Logo setting "Use the logo supplied by the active theme" on the "Site information" page results in a login page that doesn't display the logo of your frontend theme but the one provided by the admin theme, e.g. the Backdrop logo for Seven.
Steps To Reproduce
To reproduce the behavior:
- Spin up a fresh Backdrop site, version 1.30.0, or update an older site to Backdrop 1.30.0.
- Make sure, Seven is the admin theme.
- In the installer, choose a frontend theme that provides a logo, e.g. Shasetsu, and set it as default theme.
- Of the Login page options at the bottom of the page
admin/config/people/loginchoose "Show simplified page" and enable "Use the administration theme for simplified login pages" (default setting for new sites). - Go to the "Site information" configuration (
admin/config/system/site-information), scroll to the Logo settings, and enable the checkbox "Use the logo supplied by the active theme". - Clear caches.
- Log out, or open the site in another browser, and go to the Login page.
Actual behavior
The Login page shows the Backdrop logo.
Expected behavior
The page shows the logo from the default frontend theme.
As mentioned during the weekly meeting, the current behavior is 'logical' from a technical point of view, but it's not what people would expect or even want.
Recording of the topic in the weekly meeting of January 23, 2025: https://www.youtube.com/live/ObNrrDKUJDI?t=1858
One idea raised by @quicksketch in the weekly meeting was to not display the Backdrop logo for Seven on the login pages, also because it's not displayed anywhere else when you use the theme. I like the idea. What do others think?
because it's not displayed anywhere else when you use the theme...
That's almost true, as it's displayed on - for example - the update page:
But on the login page it doesn't make much sense. I belief, we agree here. (Why the admin theme is even usable for the login page, and is the default is completely off topic here. 😁 )
Part of the reason this is convoluted is because the Default Administrative Layout does not have a Header block in the HEADER region.
If the Header block is added for to the admin layout it provides options to show logo, site name and site slogan. These may not behave quite as you expect, but now you can see the logo on those pages.
The update page is different, it doesn't use a layout and already designates a spot for the logo.
When admin/config/system/site-information is set to use the logo supplied by the active theme: site side it will show theme logo and on admin side it shows the Backdrop logo with the Seven theme.
When the Header block is added to the default admin layout and show logo is checked the same thing happens: site side it will show theme logo and on admin side it shows the Backdrop logo.
This suggests that the Backdrop logo is the default logo for the Seven theme and by default only visible on the update (non-layout) page.
One the other hand if admin/config/system/site-information is set with uncheck use logo by theme and instead uses path to custom logo: the custom logo will show on both the front end and on the admin side. It also shows on the update block and if the Header block is added to the admin layout it will show there, and it shows on the simplified login.
@izmeez Thanks for your input. Your comments have made me more aware that the wording of the option "Use the logo supplied by the active theme" may not make the crucial point clear enough: That it could indeed be the admin theme which supplies the logo. When I saw the word "logo" in this context, I never thought at the admin theme. So, I think it would be good to provide a description text which makes things more clear.
Apart from that, I'm still for changing the behavior. Either just not show the admin theme logo on the login page (as suggested in a comment above). Or change the form on admin/config/people/login, so that the problematic option "Use the administration theme for simplified login pages" isn't anymore the default for new sites.
I repeated the steps described in my earlier comment with the Gin theme as the admin theme. The Gin theme has a logo and it is BIG. There is no css sizing in the admin layout.
Three things come to mind.
-
Seven should not have a logo. Otherwise it will need it's own to avoid future confusion by using the Backdrop core logo.
-
The admin layout in core will need css sizing for the logo in the admin layout. There may already be css sizing for the update block and sign-in block. When site information logo settings specifies a path to a logo, the logo will be shown in the admin theme and needs to be appropriately sized.
-
When code checks site information, logo settings option:
use logo supplied by theme; if it is selected and this is an admin theme, return display nothing on admin layout or blocks (update block, sign-in block, etc. )
I opened a separate issue for square logos being too large that was mentioned in the dev meeting.
For this issue of which logo shows on the simplified login page when the administration theme is chosen for the simplified login, there is one more nuance to replicating the problem. The active theme for the website must itself have a logo.
If the site theme does not include a logo, even if the site information option to use the logo supplied by the active theme is selected (noting it is the default for Backdrop), the simplified login will NOT show a logo even when the option to use the administration theme, that has a logo like seven or gin, is chosen.
It is only when the site theme includes a logo this problem occurs, showing the admin theme logo on the simplified login using admin theme. Some may consider this to be the desired behaviour, similar to how other products like Wordpress, show a generic Wordpress login.
But, there is the nuance in the logic, requiring that the theme chosen for the site must itself have a logo.
Looking at this issue from where it arose in https://github.com/backdrop/backdrop-issues/issues/6570#issuecomment-2131128847 it appears that the goal was to have a default backdrop login for any sites that want it, like Wordpress and the others have, "boldly showing it is Backdrop".
Anyone who doesn't want that can still have a simplified login with the theme they are using and not use the admin theme. This is probably the most anticipated use case, whether they use the logo provided by the active theme (backdrop default unchecked), or a custom logo path configured at admin/config/system/site-information.
Meanwhile, the login style is configured at admin/config/people/login. Here they can choose to: use tabs as before, use links, or simplified login with a further option to use the admin theme.
The backdrop default for this new feature is to use the simplified login with use admin theme but the resulting login is not the generic we want. It is limited by the site-information logo settings default and does not show the Backdrop logo, only showing the name Backdrop.
If the site information logo settings is changed to use the logo supplied by the active theme it works in conjunction with the backdrop default Login page options to show the simplified login with the admin theme, and provide the generic style sought. There may be more significant cases to be made for changing the backdrop default for this setting, but it may not be the best solution for this issue.
A better solution for the option: to use the simplified login with admin theme aka generic display, should not be dependent on the site information setting, it should always use the Backdrop logo, the logo used by the Seven theme.
But, what happens when the Gin theme is used as the admin theme, if the logo supplied by the admin theme is used it will not be the Backdrop logo. Therefore, should the simplified login with admin theme always use the Backdrop logo from core not the logo supplied by the admin theme?
An edge case may be to use the site theme as the admin theme in which case the simplified login with admin theme would look like the option without the admin theme, except it would use the Backdrop Logo like the generic login display.
To achieve this, the option will need to be coded to always use the Backdrop logo and the text changed to: `Use the administration theme with Backdrop logo.'
Interesting observerations and thoughts, @izmeez! I find the questions almost too complex to progress in written discussion. Perhaps it would be good to discuss the topic again at a weekly meeting.
Or a PR may help. I'll see what I can do.
Actually, the more I think about it the more I think just changing the backdrop default for admin/config/site_information logo settings to checked for use logo supplied by active theme is the way to go.
Then, out of the box, Backdrop 1.30.0 new simplified login with admin theme will display the Backdrop logo as desired. Also, when trying different themes, any that have a logo will display them which is the desired behaviour. I found myself confused because Basis doesn't seem to have a logo, which surprised me.
When you see the simplified login shows the Backdrop logo, not your active theme logo, the use admin theme option can be unchecked providing the simplified login with the active theme and logo. It may make better sense, and as soon as a custom logo is used it will appear everywhere.
The support to use the admin theme for login is already there and will provide the desired look out of the box. Some use cases may prefer the option to use the admin theme while still being able to brand both the active and admin themes with custom logo.
Although, using another theme for the admin theme, such as the Gin theme, will display its logo unless a custom logo is specified. Again, this may be as expected.
Now, I see there is more to consider from before from @klonos in https://github.com/backdrop/backdrop-issues/issues/6560
For reference here is the PR that was committed, https://github.com/backdrop/backdrop/pull/4966
And the issue that PR was for, https://github.com/backdrop/backdrop-issues/issues/6799
Using BD 1.30.1 this is currently how the simplified login setting with use logo supplied by active theme looks with Seven and Gin. Both have square logos that look ok.
But, should the simplified login with admin theme always show the Backdrop CMS logo?
We discussed this at length during a dev meeting. @izmeez was there and described that he was under the impression we should promote the Backdrop product on the login page. So the current behavior is pretty much fine, except we should set the theme logo setting to use logo supplied by active theme.
I'm ambivalent about whether we should show the Backdrop logo on login.
I worry about trying to use the front-end logo on the admin theme however, since the front-end logo can be intended for particular color-scheme. You could end up with a white-on-white logo pretty easily.
I don't think we have a clear path forward here. I certainly don't have a strong opinion and the current behavior seems "okay" to me.
We discussed this at length during a dev meeting.
I've just watched the discussion on YouTube. When I opened this issue, I saw it as a bug in the sense of not expected behavior. I agree however with the latest considerations that the current behavior is "pretty much fine, except we should set the theme logo setting to use logo supplied by active theme". Let's also have a look at the wording of the logo options, while we're at it. @izmeez Are you still / again up to provide a PR?
@quicksketch
I worry about trying to use the front-end logo on the admin theme however, since the front-end logo can be intended for particular color-scheme. You could end up with a white-on-white logo pretty easily.
This is the current behavior and may happen if a logo is uploaded or a path to logo is supplied because then the same logo will appear on the front end and on admin theme login.
It does not happen with the "use logo supplied by active theme" that uses different logo for front end theme and admin theme, unless the front end theme is chosen to be the admin theme.
@olafgrabienski It sounds like you are in support of having the Backdrop logo showing on the simplified login with admin theme when it is Seven, that will require changing the default to "use logo supplied by active theme" and improve the wording. This would be relatively simple. However, we can wait for others to chime in or I can create a PR?
It sounds like you are in support of having the Backdrop logo showing on the simplified login with admin theme when it is Seven, that will require changing the default to "use logo supplied by active theme" and improve the wording.
Yes, thanks for summarizing! And one more note: the new default should only be set for new installations, right?
However, we can wait for others to chime in or I can create a PR?
As you like! More feedback is welcome, but we don't have to wait, I guess.
@olafgrabienski The title of this issue needs to be changed and I don't seem to be able to do that, may be you can. Possibly something like "Change Use logo supplied by active theme default to enabled."
@izmeez Good idea! I've changed the title (and added an update to the issue description to reflect the changed direction).
Looking at this further I am NOT inclined to change this setting. The current default with the option to use the logo supplied by the active theme disabled also exposes the option to upload a custom logo or add a path to one. If the option is enabled the options for custom logo is hidden and may be difficult for new users to find it.
Current default:
Proposed change:
This suggest the way this setting is being used by the front-end theme and the admin theme is mixing two different functions that should be separated.
Looking at this further I am NOT inclined to change this setting. (...) If the option is enabled the options for custom logo is hidden and may be difficult for new users to find it.
I see your point! I'd suggest however to continue as suggested and improve upon it: An improvement of the wording will already be helpful. Then we could also remove the conditional which hides the other options if the theme option is enabled.
It seems like the focus here shifted to improve the form(s) on admin/config/system/site-information.
I totally support that, as in its current state the form is confusing. Especially this automatic hiding of options seems like a bad idea to me.
I wonder it it were possible to use radios (theme logo / custom logo), but I have to admit, that I didn't really look too closely at the current form logic.
Oh, right, we already have an issue for that: https://github.com/backdrop/backdrop-issues/issues/5661
And for wording we have another one: https://github.com/backdrop/backdrop-issues/issues/2601
Would it be too complex to add a separate field to upload a separate logo for the login page?
@docwilmot
Would it be too complex to add a separate field to upload a separate logo for the login page?
I would prefer this option for simple login with the admin theme.
Would it be too complex to add a separate field to upload a separate logo for the login page?
Not necessarily. (The devil's in the details.)