Layouts
The Layouts section is the one place to choose the structural layout for each major page type: the course catalog, the course page, the lesson player, the course quiz, and the standalone quiz. Switching a layout never changes the page URL.
What you can do
- Pick a layout variant for the course catalog, single course page, lesson, course quiz, and standalone quiz.
- Set how many course cards show per row on desktop for the catalog grid.
- Switch layouts freely without breaking any links -- the URL stays the same.
- Keep tablet and mobile responsive automatically (the catalog grid drops to 2 then 1 column on smaller screens regardless of the desktop column count).

How to use it
Step 1 -- open Layouts
Go to Learnomy Settings and click Layouts in the sidebar.
Step 2 -- pick a layout per surface
In the Layouts card, each row is one page surface with a dropdown of layout variants:
- Course catalog
- Course page
- Lesson
- Course quiz
- Standalone quiz
Choose the variant you want for each. The list of variants is provided by the layout system and grows as more surfaces are migrated to it.
Step 3 -- set the catalog grid density
Use the Catalog columns dropdown to choose how many course cards appear per row on desktop (2, 3, 4, or 5). Tablet and mobile stay responsive and are not affected.
Step 4 -- save
Click Save Changes. The new layouts render on the front end right away, with no URL change.
Settings and options
Each surface stores its choice in the learnomy_settings option under that surface's setting key (defined by the layout system), plus the grid density:
| Field | Option key | Notes |
|---|---|---|
| Course catalog | per-surface setting_key from \Learnomy\layouts() |
Variant value from that surface's variant list. |
| Course page | per-surface setting_key |
Variant value. |
| Lesson | per-surface setting_key |
Variant value. |
| Course quiz | per-surface setting_key |
Variant value. |
| Standalone quiz | per-surface setting_key |
Variant value. |
| Catalog columns | catalog_columns |
Integer 2-5. Default 3. |
For developers
\Learnomy\layouts()-- returns the registered surfaces, each with itssetting_key,default, andvariants.learnomy_layouts-- filter to register new surfaces or add variants (Pro and third-party layouts hook here).learnomy_layout_{surface}-- filter applied to the resolved variant for a surface (for examplelearnomy_layout_archive), so code can override the chosen layout at render time.