PlayForge Lotus Docs
Documentation for WordPress, ported from the Lotus Docs Hugo theme. Hierarchical docs, sidebar, TOC, Markdown, search, and bulk import.
by Chris · github.com/chrispengcn/playforge-lotusdocs · website
Install
The author publishes release zips, so WP-CLI can install straight from GitHub:
wp plugin install https://github.com/chrispengcn/playforge-lotusdocs/releases/download/v1.0.0/playforge-lotusdocs.zipReadme
PlayForge Lotus Docs
A documentation plugin for WordPress that ports the layout and styling of the Lotus Docs Hugo theme into a fully native WordPress experience.
It adds a hierarchical Docs post type with folders and documents, a
collapsible sidebar tree, a table of contents, Markdown authoring (with
front-end syntax highlighting), client-side instant search, and bulk import from
.md files / .zip archives. The active WordPress theme's own header and
footer are used — no separate theme is required.
Features
- Hierarchical Docs — custom post type
pfld_docwith nested folders and documents. - Sidebar tree — collapsible navigation reflecting the folder/document hierarchy, with expand/collapse state.
- Table of Contents — auto-generated from document headings, with scroll-spy active highlighting.
- Markdown — write docs in Markdown using the bundled Parsedown / ParsedownExtra.
- Syntax highlighting — Prism.js with a large set of language components, plus a copy button on code blocks.
- Client-side search — instant search across all docs without a backend request.
- Bulk import — import one or more Markdown files, or a
.ziparchive, preserving folder structure. - Settings screen — customize labels, sidebar behaviour, TOC, search, and code-highlighting options.
- Zero-lock-in — docs are standard WordPress posts; deactivating the plugin does not delete your content (use Delete Plugin to remove data).
- Uses your theme — renders inside the active theme's
header.php/footer.php, so it matches the rest of your site.
Requirements
- WordPress 6.0 or higher
- PHP 7.4 or higher
- A modern browser (for admin and front-end interactivity)
Installation
From a release ZIP (recommended)
- Download the latest
playforge-lotusdocs.zipfrom the Releases page. - In WordPress, go to Plugins → Add New → Upload Plugin.
- Choose the ZIP file and click Install Now.
- Click Activate Plugin.
- A new Docs menu appears in the admin sidebar.
Manual (FTP / SSH)
- Upload the
playforge-lotusdocsfolder towp-content/plugins/. - Activate the plugin through the Plugins menu in WordPress.
Getting Started
- Open Docs → Add New and create a top-level document, or use Docs → Add Folder to organize sections.
- Use the Document Attributes meta box to set the parent, order, and whether the item acts as a folder.
- Write in Markdown in the editor (the plugin renders Markdown on the front end; the block editor remains available for hybrid content).
- Visit
/docs/to see the documentation archive, or open any document to see the sidebar, TOC, and content. - Go to Docs → Settings to customize labels, sidebar, TOC, search, and code-highlighting theme.
Importing Markdown
- Go to Docs → Import.
- Upload one or more
.mdfiles, or a.zipcontaining a folder structure. - The importer maps each Markdown file to a
pfld_docpost and recreates the directory hierarchy as nested documents/folders.
Building the stylesheets (optional)
The compiled CSS files under assets/css/ are committed, so most users never
need to build. If you want to modify the SCSS sources:
cd build
npm install
npm run build
The SCSS sources (including the vendored Bootstrap partials used by the
original Lotus Docs theme) live in build/scss/, and the build script is
build/build.mjs.
Repository structure
playforge-lotusdocs/
├── playforge-lotusdocs.php # Main plugin bootstrap
├── uninstall.php # Cleanup on plugin deletion
├── .distignore # Files excluded from distribution archives
├── includes/ # PHP classes (post type, render, search, import, etc.)
├── templates/ # Front-end templates (archive, single, parts)
├── assets/
│ ├── css/ # Compiled stylesheets (committed)
│ ├── js/ # Front-end JS + Prism language components
│ └── fonts/ # Self-hosted icon font
├── vendor/
│ └── parsedown/ # Parsedown + ParsedownExtra (vendored)
├── build/ # SCSS sources and build tooling (excluded from dist)
└── hugo/ # Upstream Lotus Docs Hugo theme for reference (excluded from dist)
Distribution archive
The .distignore file (used by wp dist-archive) excludes build/ and hugo/
from the installable ZIP, because neither is needed at runtime:
build/contains SCSS sources,node_modules, and the build script. The compiled CSS is already inassets/css/.hugo/contains the upstream Lotus Docs Hugo theme, kept in the repository so the port can be audited against its source, but not required to run the plugin.
Credits
- Ported to WordPress by Chris.
- Layout and styling based on the Lotus Docs Hugo theme by Colin Wilson (MIT).
- Markdown parsing by Parsedown and ParsedownExtra.
- Syntax highlighting by Prism.js.
License
GPL-2.0-or-later. See LICENSE.
Read the full README on GitHub →
Releases
| Tag | Published | Asset | Downloads |
|---|---|---|---|
| v1.0.0 | Aug 23, 2026 | playforge-lotusdocs.zip | 0 |