Theme Logo Support

This proposal was merged to coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.Core Core is the set of software required to run WordPress. The Core Development Team builds WordPress. in [36698]. Download the latest nightly build and give it a try!

It’s been proposed that we add Theme Logo Support to core for 4.5. This would allow themes to declare support for a logo, which would be customizable via … the customizer! Let’s walk through some background, and how this would work.


Theme Logo Support was kindly ported over to core from Jetpack’s “Site Logo” feature by sir @obenland on #33755, with much assistance from others in getting it core-ready ( 😀 ).

In core, it’d be a theme mod enabled via add_theme_support( 'site-logo', size ), rather than storing the logo persistently across themes. This is for a few reasons:

  • Customizer controls should only be visible when a feature is supported by the theme.
  • Prevent plugins from using a “global” logo when the Customizer controls may not be visible
  • Prevent poor display of logos that looked good on one theme, but whose size is not appropriate for another theme’s declared size.

The plan would be to ship a new version of Twenty Sixteen (thanks @karmatosed, @iamtakashi!) that supports this feature along with 4.5, as an example to other themes for implementation.

This would allow a common theme feature, logos, to have a common implementation provided by core and available in a consistent location for users.

There were user tests performed by @karmatosed, on make/flow, which showed confusion with customizer discoverability, but were generally positive in users being able to tell the difference between the Logo feature and a Site Icon.

@boren also has a running set of flow screenshots that you can look through, with the newest ones on iPhone, and the screenshot above reflecting the most recent patch.

To test this, apply the most recent patch on #33755, and install the Twenty Sixteen theme found in the site-logo branch.

Let me know what you think!

#4-5, #customize, #media