Admin Routes
Page Types
Both Pages (type 1) and Posts (type 2) are managed in the same workspace. Use custom sorting (custom_sorting) to control the display order within listings.
Taxonomy
- Categories: many-to-many via
cms_pages_categoriesjoin table - Tags: many-to-many via
cms_pages_tagsjoin table
Cross-Table Unique Slug Validation
TinyMCE Editor Configuration
Enabled Plugins
Supercode Source Code Editor
The Supercode plugin provides a full source-code editing experience:- Ace Editor with Monokai dark theme
- Syntax highlighting and line numbers
- HTML tag autocomplete
- Cursor and selection synchronization with the TinyMCE visual editor
Toolbar Controls
Tailwind CSS Preview
The TinyMCE editor iframe loads Tailwind CSS 2.x via CDN. Tailwind utility class snippets render accurately while editing — no separate preview step required.Layout Options
Each sidebar column has its own independent TinyMCE editor instance and supports all shortcodes.
Collapsible Navigation Sidebar
The left-hand CMS tab menu — Page Details, Publishing Info, Security & Gating, Layout & Media, Custom CSS & JS, Revisions History — can be collapsed. When collapsed, the content/editor area auto-expands to full browser width, maximizing editing space on smaller screens.Revisions & Autosave
Page Access Gating
Access gating is configured in the Security & Gating tab of the page editor.Product Purchase Gate
Set a Required Product ID to restrict the page to customers who have completed a paid order for any variant of that product.- Verification is session-cached after the first successful check — no repeated database lookups on subsequent visits.
- Admin accounts always bypass the gate regardless of purchase history.
Access Code Gate
Once a visitor enters the correct code, the page remains unlocked for the entire session. Multiple code-gated pages can be independently unlocked within a single session.
Publishing & Visibility
Header & Title Customizations (Layout & Media Tab)
Helpful Rating Widget
An interactive thumbs up / thumbs down widget shown at the bottom of the page whenHide Page Ranking = 0.
- Votes are session-locked — a visitor can only cast one vote per page per session, preventing ballot stuffing.
- Aggregate rating counts are stored in the database and visible to admins.
Editor Toolbars & Drawers (Right Edge)
Three slide-out drawers are accessible from the right edge of the page editor:1. HTML Widget Library Drawer
Pre-built HTML snippets ready to insert into TinyMCE:
Drag a snippet directly onto the TinyMCE canvas, or click to insert at the current cursor position.
2. Display Plugins Drawer
Shows all active display-type plugins currently installed. Drag the plugin’s shortcode token directly into the editor canvas.3. Link Generator Drawer
Live-search across the entire site for linkable content:
For each result, copy one of three ready-to-use formats:
Inline Image Upload
- Uploaded and stored under
/storage/app/public/cms_inline/ - Returned as a site-relative URL and embedded at cursor position automatically
Tab Target Refocusing (Admin Failsafe)
If the same CMS page is open in multiple browser tabs, clicking Edit Page from the live public-facing site will focus the existing editor tab rather than opening a new one and reloading.This prevents concurrent editing sessions on the same page that could result in one tab overwriting another’s unsaved changes on save.
Dynamic Homepage
The site root (/) is database-driven via the CMS Page record with ID = 1.
