Custom pages for your FlatBB forum, written in Markdown and published at clean addresses such as /p/about or /p/rules.

What it does

  • Adds an admin page under Plugins → Pages with a list of all pages and a drawer editor.
  • Each page has a title, a slug, a Markdown body, an optional place in the left menu and a weight for ordering.
  • If the slug is left empty it is built from the title (slugify()). When the address is already taken, a number is appended (-2, -3, …), so saving never fails because of a duplicate slug.
  • Pages marked Show this page in the left menu appear in the Community group of the left column, sorted by weight. The menu is loaded with one query per request.
  • The public address /p/{slug} renders the Markdown through the core md() renderer inside the normal page layout. Unknown slugs return the standard 404 page.

Admin

Plugins → Pages lists every page with its address, menu state, weight and last update time. New page and Edit open the editor in a drawer; the drawer also works as a full page (?full=1).

Deleting a page is a separate POST action in the row menu and asks for the admin password again (need_sudo()). Every save and delete is written to the admin action log.

Settings

None.

Notes

  • Only the plugin's own table plugin_tabre_pages_pages is created. Uninstalling the plugin drops it.
  • Titles are escaped by the core helpers; only the Markdown body is rendered as HTML, through md().
  • The left-menu callback does nothing when the layout probe calls it without a navigation array, so the plugin can be placed normally under Admin → Widgets.