The blog used to have a sidebar with a search box, recent posts and a newsletter sign-up. Now the posts stretch the full width of the page and the sidebar is simply not there. Or you added a new widget, saved it, and the site looks exactly as it did before. Nothing in the dashboard says anything is wrong.
When you have WordPress widgets not showing, it helps to think of a widget’s journey to the screen as a series of gates. The widget has to exist, it has to be placed in an area, the theme has to print that area on this particular page, no rule can be hiding it, and nothing can be covering it up. Fail any one gate and the visitor sees nothing. This guide takes the gates in order.
Gate 1: does your theme have widget areas at all?
Look under Appearance in the dashboard. If there is a “Widgets” item, your theme registers widget areas, and you can continue to the next gate.
If there is no Widgets item and you see “Editor” instead, you are using a block theme. Block themes do not use the old widget areas. A sidebar in a block theme is just a group of blocks placed inside a template, and you edit it in the Site Editor under Appearance, then Editor. There is nothing to “assign”; you open the template that should contain the sidebar and add or fix the blocks there.
This is why sidebar widgets so often go missing after a theme switch. Moving from a classic theme to a block theme means the old widgets have nowhere to go. They are not deleted, but the new theme will not display them. The fix is to rebuild the sidebar as blocks in the new theme’s templates.
Gate 2: is the widget in an active area?
Open Appearance, then Widgets. Since WordPress 5.8 this screen uses blocks by default, so each widget area appears as a box you can expand, with blocks inside. Expand each area and check where your widgets actually are.
The “Inactive widgets” area
When you switch from one classic theme to another, WordPress tries to move widgets into matching areas in the new theme. When it cannot match an area, the widgets end up under “Inactive widgets”. They keep their settings, but they appear nowhere. Drag or move them back into a real area and save.
The wrong area
Themes often have several similarly named areas: “Sidebar”, “Blog Sidebar”, “Page Sidebar”, “Shop Sidebar”, “Footer 1” to “Footer 4”. A widget placed in “Page Sidebar” will never appear on blog posts. If your theme’s documentation lists what each area is for, it is worth five minutes to read; otherwise, put a simple Paragraph block in each area with its name as the text, view the site, and see which one appears where. Remove the test blocks afterwards.
Legacy widgets inside the block screen
Widgets written for the older system still exist on many sites, especially ones from plugins that have not been rewritten. On the block-based screen they appear wrapped in a “Legacy Widget” block. Usually they work exactly as before. Occasionally the wrapper shows an error, or the widget’s settings form will not open, because the plugin behind it has been removed or no longer supports that widget. If a legacy widget in an area shows a warning instead of its settings, that is a strong hint the plugin providing it is the thing to look at, not the theme.
If an area holds fewer widgets than you remember after a plugin update, read that plugin’s changelog. Plugins do sometimes retire an old widget in favour of a block, and the area then simply has one item fewer.
The old widgets screen
Some older themes and plugins do not cooperate well with the block-based widget screen. Widgets may refuse to save, or the screen may show errors. The official Classic Widgets plugin, from the WordPress team, restores the earlier screen. It is a reasonable step for an older site, though it is better in the long run to keep the theme and plugins up to date so the block screen works properly.
Gate 3: does this page’s template print the sidebar?
Many “it worked yesterday” cases end up here, and they have nothing to do with the widgets themselves. A widget area only appears if the template used for that page asks for it.
Things that turn the sidebar off for a page:
- A full-width page template. In the page editor, look at the Template setting in the side panel. “Full Width”, “No Sidebar” or “Blank” templates leave the sidebar out on purpose.
- A theme layout option. Many themes have a Customizer or theme options setting such as “Sidebar position” with separate choices for posts, pages, archives and the shop. One of them may be set to “None”.
- A per-page setting. Some themes add a layout box to each page or post that overrides the global choice. Check below the content area or in the side panel of the editor.
- A page builder canvas. Pages built with a builder’s “canvas” or “full width” mode often drop the theme’s sidebar entirely.
A quick way to separate this gate from the others: if the sidebar shows on one type of page (say, blog posts) but not another (say, pages), the widgets are fine and the template or layout setting is the difference.
Gate 4: is a rule hiding it?
Widget visibility rules are useful and easy to forget. Plugins such as Widget Options, and some themes and Jetpack features, let you show a widget only on certain pages, to certain users or on certain devices. Each rule is stored with the widget, so the widget looks perfectly normal on the Widgets screen and still does not appear.
Open each missing widget and look for visibility or display settings, often at the bottom of the widget or in a separate tab. Look for rules like “show only on home page”, “hide on mobile” or “logged-in users only”.
The content inside a widget can have its own rules too. A widget containing a shortcode for a form or a slider will show nothing if that shortcode’s plugin is inactive, or will show the shortcode as plain text. That case is covered in our guide to a shortcode that shows up as bracketed text.
Gate 5: is something covering or collapsing it?
Sometimes the widget is in the page’s code but cannot be seen. To check, right-click where the sidebar should be and choose Inspect, or open the page source and search for a word from the widget’s title. If the text is in the code, the widget passed every gate above and the problem is presentation.
- CSS hiding it. Custom CSS added in the Customizer or by a plugin may set the sidebar to hidden, often at a particular screen width.
- The sidebar has moved. On phones, most themes move the sidebar below the main content. It is not missing; it is at the very bottom of a long page, sometimes under the comments.
- Layout broken by another element. A wide table or image in the content can push the sidebar down below everything else, even on a desktop. The help with broken WordPress layouts page explains what we look at when a layout falls apart.
- Optimisation plugins. “Remove unused CSS” style features can strip the styles a sidebar needs, collapsing it to nothing.
Footer widgets and other areas
Everything above applies equally to footers. Footer widget areas tend to have one extra trap: the theme may have a setting for the number of footer columns. Set it to two and anything in “Footer 3” and “Footer 4” disappears. Look for a footer layout or columns option in the Customizer.
If the footer or header comes from a page builder template rather than the theme, the theme’s widget areas may not be printed at all. The navigation side of the same problem is covered in our guide to a menu missing from the header.
A tidy way to test without disturbing visitors
If you need to move widgets around to find the fault, do it on a copy of the site where you can, because each change on the live site is visible straight away. Our post on setting up a WordPress staging site explains how a copy works and how to push changes back. If you must work live, change one thing, check the front end in a private window, and note the result before the next change.
Still have WordPress widgets not showing? What to record
- Which widgets are missing, and which area they are in on the Widgets screen
- Which pages they are missing from, and whether any page still shows them
- Whether the theme was changed or updated recently
- Whether the widget’s text appears in the page source
With those four answers, the gate that failed is usually obvious, even to someone who has never seen the site. If the theme is custom-built, or the sidebar logic is buried in code, that is a job we can pick up; we can fix wordpress bugs like this on a single-incident basis.
Sidebars rarely vanish without a reason, and the reason is almost never that the widgets were lost. Work through the gates in order, and you will usually find them sitting in an area the theme forgot to print.
For how widget areas work in the first place, read our guide to WordPress widgets.
Next in this series: WordPress Search Not Working? Run the URL Test