Per-Page Settings
Pro featureSome pages on your site need to break the rules. A landing page might need a full-width hero with no sidebar. A long-form article might benefit from a narrower reading column. A pricing page might look better without the header. A members-only welcome page might need dark mode always-on regardless of the visitor's preference.
BuddyX Pro 5.1.0+ ships a Page Settings meta box that lets you override the site's global settings just for this one page or post. Open any page in the WordPress editor and look for the Page Settings panel in the right-side column.
This is a 5.1.0 feature. If you don't see Page Settings in the editor sidebar, make sure you're on BuddyX Pro 5.1.0 or later, and that you're editing a page, post, or supported custom post type.
What you can override per page
| Setting | Key | What it controls |
|---|---|---|
| Sidebar | _buddyxpro_page_sidebar |
Pick the sidebar layout (Left / Right / Both / None / Default) for this entry. Overrides the page-template or global default. |
| Hide site header | _buddyxpro_page_disable_header |
Hides the site header on this entry. Useful for full-screen landing pages, sign-up flows, or "distraction-free" content. |
| Hide site footer | _buddyxpro_page_disable_footer |
Hides the site footer on this entry. Pairs with "Hide site header" for full-bleed landing pages. |
| Content width | _buddyxpro_page_content_width |
Override the content container width - Narrow (comfortable reading), Default (theme global), or Full (edge-to-edge). |
| Header style | _buddyxpro_page_header_style |
Override the header style - useful when you want a transparent header over a hero image on this one landing page. |
| Color mode | _buddyxpro_page_color_mode |
Force Light, Dark, or Use Site Default. The site default + visitor toggle are honored unless you set Force Light or Force Dark here - those win regardless of visitor preference. |
| Site loader | _buddyxpro_page_loader |
Show, Hide, or Use Site Default for the site loader overlay (the loading animation that briefly covers the screen on page load). |
Each setting defaults to "Use site default" - meaning until you explicitly pick a value, the page falls through to the global Customizer setting. That makes per-page overrides safe: existing pages don't change behavior on upgrade.
Where the meta box appears
Page Settings appears on these content types out of the box:
- Pages (the most common surface)
- Posts (less common, but useful for special long-form articles)
- Products (when WooCommerce is active)
- Courses, Lessons, Topics (when LearnDash or another LMS is active)
- Most other public, editable custom post types
If you want Page Settings on a custom post type your plugin registers, use the buddyxpro_page_settings_post_types filter:
add_filter( 'buddyxpro_page_settings_post_types', function ( $supported ) {
$supported[] = 'event'; // your custom post type slug
$supported[] = 'portfolio'; // and another
return $supported;
} );
Common workflows
Build a full-screen landing page
You want a page with no header, no footer, edge-to-edge content - typical for a marketing landing page or a launch teaser.
- Create or open the page (Pages → Add New)
- Build the page content with blocks / patterns (use the Hero pattern category as a starting point)
- In the right-side editor panel, scroll to Page Settings
- Set:
- Hide site header: Yes
- Hide site footer: Yes
- Sidebar: None
- Content width: Full
- Click Publish (or Update)
- View the page - it should now render as a single full-bleed surface
Force dark mode on one page
You want a specific page (e.g. a "Night Mode Resources" page, a tech-themed launch page) to always display in dark colors regardless of the visitor's preference.
- Open the page in the editor
- Page Settings → Color mode → Force dark
- Publish
The page will render dark for every visitor. The Color Mode toggle still appears (if you have it enabled globally) but clicking it on this page has no effect - the page-level force wins.
Use a different sidebar on one post
You want most of your blog posts to have a right sidebar with recent-posts widgets, but one specific post needs a left sidebar with a custom widget area instead.
- Open the post
- Page Settings → Sidebar → Left
- Publish
This post now uses the left sidebar layout; all other posts continue to use the global default.
Hide the site loader on one specific page
You have the site loader enabled globally for the polished first impression, but a specific page (e.g. an embedded form, a fast-loading utility page) doesn't need it.
- Open the page
- Page Settings → Site loader → Hide on this entry
- Publish
How priority works
When a setting can come from multiple places, the resolution order is:
- Per-page override (Page Settings on this specific entry) - highest priority
- Per-template setting (e.g. WooCommerce single-product sidebar override) - next
- Customizer global setting (the site-wide default in Appearance → Customize) - fallback
This means you can set a sensible global default in the Customizer (e.g. "right sidebar on all blog posts") and override per-entry only when you need to.
What's NOT per-page (and why)
Some settings don't have a per-page override on purpose:
- Colors - the global color palette applies everywhere. Overriding colors per-page would require custom CSS, not a meta-box switch.
- Fonts - same as colors. Site-wide typography is a coherence decision, not a per-page choice.
- Header layout - the layout itself (which header design ships) is site-wide; you can hide the header per-page (above) but not swap to a different header layout per-page.
- Menus - menu assignment is by menu location, not per-page.
If you need any of these per-page, talk to us - we may consider it for a future release.
Related
- Site Loader settings - the global setting that Page Settings can override
- Dark Mode - the global Color Mode setting that Page Settings can override
- Sidebar Layouts - the global sidebar setting that Page Settings can override
Got a question? We're happy to help - drop us a line at support@wbcomdesigns.com.