Schedule Logo Change: Automate Discourse site logo(s)

:information_source: Summary Seasonal Logo Changes
:hammer_and_wrench: Repository Scheduled Logo Change
:question: Install Guide How to install a theme or theme component
:open_book: New to Discourse Themes? Beginner’s guide to using Discourse Themes

Install this theme component

A Discourse theme component that automatically replaces the site logo with uploaded images on a recurring, calendar-based schedule. Use it for seasonal logos (Halloween, Christmas, special events, anniversaries, etc.) without having to manually swap the site logo each year.

Open the component settings and add one or more entries to Schedules. Each entry has:

Field Required Purpose
Name :white_check_mark: Label used to identify the schedule in the admin UI
Start month / Start day :white_check_mark: First day the logo is shown
End month / End day :white_check_mark: Last day the logo is shown
Logo Desktop logo, light mode
Logo (dark) Desktop logo, dark mode
Small logo Minimized-header logo, light mode
Small logo (dark) Minimized-header logo, dark mode
Mobile logo Mobile logo, light mode
Mobile logo (dark) Mobile logo, dark mode

Any image left blank falls back to the site’s default logo for that variant. Dark-mode variants fall back to their light-mode counterpart from the same schedule when not provided, so dark mode still shows the seasonal logo.

Schedules recur every year: you set a start and end month/day, not a specific year. Ranges may wrap around the end of the year (e.g. December 15 → January 5). When multiple schedules overlap, the first matching schedule in the list wins.

:information_source: At least one logo must be chosen per schedule – otherwise the component does nothing (logically…)

5 Likes

So not setting anything would simply fallback to just the default site logo, not some blank image? (I assume that’s what happens when null goes into the value transformer?)

Yes, if you set nothing, it falls back to the default so essentially does nothing.

1 Like