Docs plugin
Manages documentation pages, nested arbitrarily deep — see Content hierarchy. Renders as HTML, Markdown or PDF depending on the requested format (Accept header, or .md/.pdf suffix) — see PDF and Markdown export for what the last two add, including bundling a whole section into one file with ?full=1.
Configuration (services.yaml)
Enabled under derafu.content.config.plugins.docs:
parameters:
derafu.content.config:
plugins:
docs:
path: 'resources/content/docs'
sidebarDepth: 5
| Option | Type | Default | Description |
|---|---|---|---|
path |
string | resources/content/docs |
Directory scanned for docs, relative to the website root. |
include |
array of glob patterns | ['**.{markdown,md}'] |
Files considered content, relative to path. |
exclude |
array of glob patterns | [] |
Files excluded even if matched by include. |
sidebarPath |
bool | true |
Whether to show the sidebar, auto-generated from the content hierarchy. There is no support for a custom, manually curated sidebar file — sort/label docs via sidebar_position/sidebar_label in their frontmatter instead. |
sidebarCollapsible |
bool | true |
Whether sidebar categories can be collapsed. |
sidebarCollapsed |
bool | true |
Whether sidebar categories start collapsed. |
sidebarDepth |
int | 5 |
Maximum nesting depth shown in the sidebar. |
showLastUpdateAuthor |
bool | true |
Whether to show who last updated the doc. |
showLastUpdateTime |
bool | true |
Whether to show when the doc was last updated. |
breadcrumbs |
bool | true |
Whether to show breadcrumbs above the doc. |
tags |
array of strings, or string | [] |
Predefined tags for the docs. |
onInlineTags |
ignore|log|warn|throw |
warn |
What to do when a doc uses a tag that isn’t in the predefined tags list. |
Content frontmatter
Docs use the generic content frontmatter, plus a few fields read directly by the docs template (not part of the shared schema, but supported the same way via arbitrary metadata):
| Field | Type | Default | Description |
|---|---|---|---|
show_title |
bool | false |
Renders # {title} at the top of the body — useful together with hide_title: true if you want the title placed differently than the default heading. |
show_description |
bool | false |
Renders the description right below the title inside the body. |
iframe |
string | none | URL embedded as a full-width <iframe> below the content. |
openapi |
string | none | URL of an OpenAPI/Swagger spec; renders a full Swagger UI below the content instead of (or in addition to) the Markdown body. |
show_source |
bool | false |
Shows the raw source of the file (Markdown or Twig) in a code block below the content. |
show_children |
bool | false |
Renders a card grid linking to this doc’s direct children (title + description), useful for section landing pages. |
hide_table_of_contents keeps the generic default (false) for this plugin.
On this page
Last updated on 10/10/2026
by Anonymous