Orion Theme — Documentation
Orion / Docs
Documentation

Configure everything with
Orion.

Complete reference for installing, customizing, and extending the Orion WordPress theme. Five layouts, five header styles, 40+ fonts, and full Elementor & WooCommerce support.

Popular articles

Installing Orion

Upload via dashboard or ZIP, activate, and configure Customizer settings.

Layout Options

Five layout configurations — set independently per page type.

Header Styles & Options

Standard, Centered, Split, Classic, and Minimal — with sticky, transparent, and glass modes.

Typography & Google Fonts

40+ fonts with live preview. Separate body and heading font controls.

Elementor Template Assignments

Replace the header, footer, archive, single post, and 404 with Elementor designs.

Action Hooks Reference

Six hook positions to inject custom content at key page positions.

What's inside Orion

📐

Five Layout Configurations

No Sidebar, Right Sidebar, Left Sidebar, Double Sidebar, and Opposing Sidebars — set per page type.

🗂️

Five Header Styles

Standard, Centered, Split, Classic (with CTA button), and Minimal — plus sticky, transparent, and glass modes.

🔤

40+ Google Fonts

DM Sans, Poppins, Playfair Display, Inter, Lora, and more — loaded from CDN only when selected.

Elementor Compatible

All Elementor theme locations registered. Assign free Elementor templates to header, footer, and 5 other areas.

🛒

WooCommerce Native

Auto-detected. Applies correct wrappers, column counts, and shop toolbar styles automatically.

🌐

RTL & Translation Ready

Full RTL language support via rtl.css. All strings use the orion text domain with .pot file included.

Need help with
something?

Submit a support ticket on WordPress.org. For theme-specific questions, the support forum is the fastest route.

Installing Orion

Orion installs like any standard WordPress theme. Choose either the dashboard upload method or the ZIP/FTP method — both take under five minutes.

Requirements WordPress 5.8 or later · PHP 7.4 or later · Tested up to WordPress 6.7

Installation methods

1

Go to Appearance → Themes → Add New

In your WordPress admin, navigate to Appearance → Themes and click the Add New button at the top.

2

Search for "Orion"

Type Orion in the search box. The theme by troeon will appear. Click Install.

3

Activate the theme

Once installed, click Activate. You'll be redirected to the Themes screen with Orion as the active theme.

1

Download orion.zip

Download the orion.zip file from WordPress.org or your download source.

2

Upload via Appearance → Themes

Go to Appearance → Themes → Add New → Upload Theme. Select the orion.zip file and click Install Now.

3

Activate

Click Activate after the upload completes.

After activation

1

Configure the Customizer

Go to Appearance → Customize. Open Orion Theme Options to set your layout, header style, colors, and typography.

2

Assign menus

Go to Appearance → Menus and assign your menus to the Primary, Footer, and other available locations.

3

Populate widget areas

Go to Appearance → Widgets and add widgets to the Primary Sidebar and up to four Footer Column areas.

You're ready Orion is installed and active. Head to Layout Options to configure your first page.
← Previous Documentation Home

Layout Options

Orion offers five layout configurations. Each can be set independently for different page types — so your blog archive can have a right sidebar while individual pages use full width.

The five layouts

LayoutDescriptionSidebars Used
No SidebarContent spans the full width. Best for landing pages and Elementor-built pages.None
Right SidebarContent on the left, Primary Sidebar on the right. The default.Primary
Left SidebarPrimary Sidebar on the left, content on the right.Primary
Double SidebarPrimary Sidebar on the left, content in the center, Secondary Sidebar on the right.Primary + Secondary
Opposing SidebarsSame three-column arrangement as Double Sidebar with an alternate CSS treatment.Primary + Secondary

Per-context layout settings

Four layout dropdowns let you assign different configurations per content type:

SettingApplies toDefault
Default LayoutFallback for all pages not covered by the settings belowRight Sidebar
Blog & Archive LayoutBlog index, categories, tags, date archives, search resultsRight Sidebar
Single Post LayoutIndividual blog postsRight Sidebar
Static Page LayoutPages (not posts)No Sidebar

Maximum Site Width

The Maximum Site Width slider controls the max-width of page content and the footer. Range: 600px – 2400px, default 1200px. This is a live-preview control — drag the slider and the Customizer preview updates instantly.

Header width is separate The header has its own width control under the Header section. You can have a full-width header with a narrower content area, for example.

Elementor pages always use No Sidebar

If a page was built with Elementor, Orion automatically forces the No Sidebar layout regardless of the Customizer setting. This ensures Elementor's canvas always spans the full content width.

Override layout per page (PHP)

functions.php / child theme
// Force no-sidebar on a specific page slug
add_filter( 'orion_layout', function( $layout ) {
    if ( is_page( 'landing' ) ) {
        return 'no-sidebar';
    }
    return $layout;
} );
← Previous Installation

Header Image Overlay

Set a banner image at Appearance → Customize → Header Image, then use the Header Image Overlay section to control the title, breadcrumbs, and dark overlay that appear on top of it.

SettingOptions
Show Header Image OnAll pages · All pages except front page · Interior pages only
Show Page TitleDisplays the current page/post title on the banner
Title & Breadcrumb AlignmentLeft · Center · Right
Title ColorColor picker — default white
Show BreadcrumbsToggle the breadcrumb trail
Vertical PositionTop · Middle · Bottom
Hide page title in content areaPrevents the title rendering twice when it already appears in the banner
Dark Overlay IntensityNone · Light (25%) · Medium (45%) · Dark (70%)
← Previous Header Styles & Options

Colors & Typography

All color and typography changes preview live in the Customizer without a page reload. Colors use CSS custom properties (--orion-primary, etc.) output as inline styles.

Colors

Go to Orion Theme Options → Colors.

SettingDefaultUsed for
Primary Accent Color#2563EBButtons, links, active states
Secondary Accent Color#0F172ASecondary UI elements
Body Text Color#334155Paragraphs, body copy
Link Color#2563EBInline links in content
Link Hover Color#1D4ED8Link hover state

Header, footer, sticky header, and CTA button colors are found in their respective Customizer sections.

Typography

Go to Orion Theme Options → Typography.

Body Font Family

Applied to paragraphs, body copy, and menus. Google Fonts are loaded from the CDN only when selected — system fonts require no network requests.

Heading Font Family

Applied to H1–H6. Leave as "— Same as Body Font —" to keep a unified typeface. When a Google Font is chosen, it's loaded alongside the body font in a single optimized CDN request.

Base Font Size

Range: 12px – 24px, default 16px. Controls the --orion-font-size CSS variable; all other type sizes scale proportionally.

Available fonts

CategoryFonts
System (no load)System UI, Georgia, Courier New
Google Sans-SerifDM Sans, Inter, Josefin Sans, Lato, Montserrat, Mulish, Nunito, Nunito Sans, Open Sans, Oswald, Outfit, Plus Jakarta Sans, Poppins, PT Sans, Raleway, Roboto, Rubik, Source Sans 3, Ubuntu, Work Sans
Google SerifCormorant Garamond, Crimson Text, EB Garamond, Libre Baskerville, Lora, Merriweather, Playfair Display, PT Serif, Source Serif 4
Display & CursiveBebas Neue, Dancing Script, Lobster, Pacifico, Righteous
MonospaceFira Code, JetBrains Mono, Source Code Pro
Google Fonts and performance Only the fonts you actively select are loaded. Fonts are requested with display=swap to prevent invisible text during load. If you choose System UI, zero external font requests are made.
← Previous Header Image Overlay

Elementor Integration

Orion is fully compatible with the free version of Elementor. All theme locations are registered automatically, and you can assign Elementor templates to seven theme areas from the Customizer.

Automatic behavior

  • All Elementor theme locations are registered on activation via register_all_core_location().
  • Pages built with Elementor automatically switch to the No Sidebar layout so your design spans the full content width.
  • Elementor scripts and styles are force-enqueued on pages that use template assignments (archive, 404, search) even if the page itself isn't an Elementor post.

Template assignments

Go to Appearance → Customize → Orion Theme Options → Elementor Templates (this section only appears when Elementor is active). Create your templates first under Elementor → Templates, then assign them here.

AreaWhat it replaces
Header TemplateReplaces the default theme header on every page
Footer TemplateReplaces the default theme footer on every page
Archive / Blog IndexCustom template for blog and archive pages
Single PostCustom template for individual posts
Single PageCustom template for individual pages
Search ResultsCustom template for the search results page
404 PageCustom template for the 404 error page
Header / footer templates When a Header or Footer template is assigned, Orion adds body-no-header or body-no-footer CSS classes to hide the default theme header/footer. Your Elementor template takes over completely.

Page templates

Two Elementor-specific page templates are available when editing any page under Page Attributes → Template:

  • Elementor Full Width — Elementor canvas with the theme's header and footer intact.
  • Elementor Canvas — Completely blank canvas. No header, footer, or sidebar. Full Elementor control.
← Previous Menus, Widgets & Footer

WooCommerce Support

Install and activate WooCommerce. Orion detects it automatically and applies proper wrappers, column counts, and toolbar styles. No manual configuration is required.

What Orion handles automatically

  • Removes default WooCommerce content wrappers and replaces them with Orion's layout-aware wrappers.
  • Shop column count adjusts based on your sidebar layout — 4 columns with no sidebar, 3 with a sidebar active.
  • 12 products per page by default.
  • Result count and ordering toolbar styled to match the theme.
  • WooCommerce page title suppressed to avoid duplication with the Header Image overlay.

Gallery features

Orion declares support for all three WooCommerce gallery features:

  • Product Gallery Zoom — hover-to-zoom on product images.
  • Product Gallery Lightbox — click-to-enlarge with a lightbox overlay.
  • Product Gallery Slider — swipe-through image slider on mobile.
📝
WooCommerce template overrides (custom product page, cart, and checkout designs built in Elementor) are available through the Orion Core companion plugin.
← Previous Elementor Integration

Developer Reference

Action hooks

Orion fires six action hooks at key positions in the page structure. Use them to inject custom HTML, banners, scripts, or rendered Elementor templates.

HookPosition
orion_before_headerImmediately before <header>
orion_after_headerImmediately after </header>
orion_before_contentBefore the main <div id="primary">
orion_after_contentAfter the main content wrapper closes
orion_before_footerImmediately before <footer>
orion_after_footerImmediately after </footer>
functions.php / child theme
// Inject a banner strip between the header and content
add_action( 'orion_after_header', function() {
    echo '<div class="promo-bar">Free shipping on orders over $50</div>';
} );

Layout filter

Use the orion_layout filter to override the layout for any request programmatically. Must return one of: no-sidebar, right-sidebar, left-sidebar, double-sidebar, opposing-sidebars.

functions.php / child theme
// Force full-width on a specific page
add_filter( 'orion_layout', function( $layout ) {
    if ( is_page( 'landing' ) ) {
        return 'no-sidebar';
    }
    return $layout;
} );

Page templates

TemplateWhen to use
DefaultStandard page — layout from Customizer setting
Full WidthForces no-sidebar regardless of Customizer setting
Elementor Full WidthElementor canvas with theme header & footer
Elementor CanvasBlank canvas — no header, footer, or sidebar

Select a template by editing any page and choosing from Page Attributes → Template.

RTL & translation

Orion includes a rtl.css file that WordPress loads automatically when the site uses a right-to-left language. No configuration needed.

All user-facing strings use WordPress translation functions with the orion text domain. A .pot template file is included in /languages/. Recommended tools:

  • Loco Translate — translate directly from the WordPress admin.
  • Poedit — open the .pot file, translate, and save .po / .mo files to /languages/.
← Previous WooCommerce

Orion Core Plugin

The Orion Core plugin is a free companion that adds advanced features on top of the theme. The theme works perfectly without it — the plugin is entirely optional.

Zero impact without the plugin All feature flags in the theme check for plugin functions via function_exists() before rendering anything. No errors, no empty containers.

Features unlocked by Orion Core

FeatureDescription
Popup BuilderCreate popups with Elementor and configure display conditions (page, user role, delay, scroll).
Mega MenuFull-width dropdown menus with Elementor content — images, icons, multi-column layouts.
Off-Canvas Side PanelSlide-out panel triggered by a header icon. Can contain widgets or an Elementor template.
WooCommerce Elementor OverridesReplace default WooCommerce product pages, cart, and checkout with Elementor designs.
Quick-Start TemplatesOne-click importable full-site starter designs.
Performance TweaksDisable emoji scripts, remove query strings from assets, and additional lazy load controls.
← Previous Developer Reference

Changelog

v1.1.8
2025

40+ Google Fonts & Heading Font Control

New Fixed Improved
  • 40+ Google Fonts added to Typography — DM Sans, Inter, Montserrat, Poppins, Raleway, Playfair Display, Lora, Bebas Neue, Dancing Script, and more
  • New: Separate Heading Font Family control — pick a different font for H1–H6 or leave as "Same as Body Font"
  • Fix: Body font and heading font selections now actually apply on the front end — CSS variables were never being output before
  • Fix: Base font size setting now applies correctly via CSS variable
  • Improvement: Selected Google Fonts loaded automatically from CDN; system fonts require no external requests
  • Improvement: Changing fonts in the Customizer updates the preview instantly without a reload
v1.1.7
2025

Header Width Controls & Site Width Fix

Fixed New Improved
  • Fix: "Maximum Site Width" setting now actually applies — was saving to DB but never outputting a CSS variable
  • New: Separate "Header Inner Width" slider to control header width independently of page content width
  • New: "Full Width Header" checkbox to stretch the header logo/nav edge-to-edge with no max-width constraint
  • Improvement: All width controls are now live-preview sliders — no page reload needed
v1.1.6
2025

Sticky Header Colors & Full Live Preview

Fixed New Improved
  • Fix: Site title and tagline no longer appear in Customizer preview when a custom logo is set
  • New: Separate sticky header background and text color controls (visible when Sticky Header is enabled)
  • New: Customizer live preview — all color, opacity, and typography controls update the preview iframe instantly without a page reload
  • Improved: Opacity and size controls upgraded to visual range sliders for a better editing experience
  • Improvement: Footer background and text colors now fully controlled by CSS variables for consistent live preview
v1.0.0
2025

Initial Release

New
  • Five layout configurations: No Sidebar, Right Sidebar, Left Sidebar, Double Sidebar, Opposing Sidebars
  • Three header styles: Standard, Centered, Split — with optional sticky header
  • Full Elementor page builder compatibility with all theme locations registered
  • WooCommerce support with automatic layout and shop column integration
  • Customizer panels for Layout, Header, Colors, Typography, Footer, and Blog Settings
  • Six hook positions, four footer widget columns, RTL support, and translation-ready

Frequently Asked Questions

How do I create a full-width page?

Edit the page and in the Page Attributes panel set the Template to "Full Width" and save. This overrides the Customizer layout setting for that page only.

How do I change the layout?

Go to Appearance → Customize → Orion Theme Options → Layout. You can set different layouts for the blog/archive, single posts, and static pages. To override on a single post or page, use the orion_layout filter in your child theme.

How do I set menus for the Split header?

Go to Appearance → Menus, create or edit a menu, and assign it to the "Split Header – Left Menu" or "Split Header – Right Menu" location. These locations only appear when the Split style is active in the Customizer.

How do I enable a double sidebar?

In the Customizer, set the layout to "Double Sidebar". Then go to Appearance → Widgets and add widgets to both the Primary Sidebar and Secondary Sidebar.

How do I change the primary color?

Go to Appearance → Customize → Orion Theme Options → Colors → Primary Accent Color. The change previews instantly.

Can I use different fonts for headings and body?

Yes. Go to Typography in the Customizer. Set Body Font Family for paragraphs and menus, then set a different Heading Font Family for H1–H6. Leave Heading Font blank to use the same font as the body.

Do Google Fonts slow down my site?

Orion only loads fonts you actively select — no unused fonts are ever requested. Fonts are loaded with display=swap to prevent invisible text. If you choose System UI as your body font, there are zero external font requests.

Can I use Elementor with this theme?

Yes. Install the free Elementor plugin. Orion registers all Elementor theme locations and automatically switches Elementor-built pages to a full-width layout. You can also assign free Elementor templates to the header, footer, and five other areas from the Customizer.

Does Orion work with WooCommerce?

Yes. Install and activate WooCommerce. Orion detects it automatically and applies the correct wrappers, column counts, and toolbar styles — no configuration needed.

Does Orion support RTL languages?

Yes. Orion includes a rtl.css file that WordPress loads automatically for right-to-left language sites (Arabic, Hebrew, Farsi, etc.).

Is the theme translation-ready?

Yes. All strings use WordPress translation functions with the orion text domain. A .pot template file is included in the /languages/ directory.

What does the Orion Core plugin add?

Popup builder, mega menu, off-canvas side panel, WooCommerce Elementor overrides, quick-start templates, and performance tweaks. The theme works fully without it — the plugin adds optional advanced features.