Description

Drupal provided the concept of "global theme settings" which applied to an installation regardless of active theme, located at /admin/appearance/settings. The following settings could be assigned at this page:

  • Logo
  • Site name
  • Site slogan
  • User pictures in posts
  • User pictures in comments
  • User verification status in comments
  • Shortcut icon
  • Main menu
  • Secondary menu
  • As well as global logo and shortcut icon settings.

Global settings have been deprecated in Backdrop; if necessary, settings are now set by individual themes. Themes no longer include any settings (or settings pages) by default. If a theme provides settings in its .info file (as you would in D7), then those settings are used as defaults. Theme setting defaults from .info files are inherited from base themes still, as they were in D7.

If a theme settings page is saved, a [theme_name].settings.json file is created in the active config directory.

The theme settings previously found at the global settings page have been moved to new locations:

  • 'toggle_main_menu' => Will use the system-provided menu block in #86.
  • 'toggle_secondary_menu' => Part of the header block in #86.
  • 'toggle_logo' => Part of the header block in #86.
  • 'toggle_site_title' => Part of the header block in #86.
  • 'toggle_site_logo' => Part of the header block in #86.
  • 'site_default_logo' => Now a site-wide setting under admin/config/system/site-information.
  • 'site_logo_path' => Now a site-wide setting under admin/config/system/site-information. Can be retrieved with backdrop_get_logo().
  • 'toggle_favicon' => Now a site-wide setting under admin/config/system/site-information.
  • 'site_favicon_path' => Now a site-wide setting under admin/config/system/site-information. Can be retrieved with backdrop_get_favicon().
  • 'toggle_comment_user_picture' => Now saved under per-node-type settings under admin/structure/types.
  • 'toggle_node_user_picture' => Now saved under per-node-type settings under admin/structure/types.

theme_get_setting() now reads per-theme configuration settings only. Themes still inherit from their base theme settings if any are provided.

Color module settings have been saved to configuration. Instead of pulling from variables, color settings can be reteived using theme_get_setting('color').

Introduced in branch: 
1.0.x
Introduced in version: 
1.0.0
Impacts: 
Architects, Administrators, Editors
Module developers
Theme developers
Related Github Issues: 
https://github.com/backdrop/backdrop-issues/issues/130