Categories and Discussions

Categories and Discussions

Categories

Understanding Categories

Categories are the top-level organizational structure of your forum. They group related discussions together and help users find content easily.

Best Practices:

  • Keep category count manageable (5-15 categories)
  • Use clear, descriptive names
  • Add helpful descriptions
  • Arrange them with the display order (categories are flat — there are no subcategories)

Creating Categories

Access: Admin Panel > Discussions > Categories

  1. Click "New Category"
  2. Fill in details:
    • Name - Category display name (e.g., "General Discussion")
    • Slug - URL-friendly identifier (auto-generated from name)
    • Description - Category description (supports Markdown)
    • Icon - Category icon (Font Awesome class)
    • Color - Category color (hex code)
    • Order - Display order (lower numbers appear first)
  3. Set permissions:
    • View - Who can view this category
    • Post - Who can create discussions
    • Reply - Who can reply to discussions
  4. Click "Create Category"

Category Structure Example

Flatboard categories are flat: there are no subcategories or parent categories. Organize your forum as a simple list of top-level categories, arranged with the Order field:

Announcements
General Discussion
Introductions
Off-Topic
Installation Help
Configuration
Troubleshooting
Feature Requests
Bug Reports
Code Sharing

Editing Categories

  1. Find category in list
  2. Click "Edit"
  3. Modify settings
  4. Click "Save"

Deleting Categories

  1. Click "Delete" on category
  2. Choose action:
    • Delete All Content - Remove category and all content
    • Move Discussions - Move discussions to another category
  3. Confirm deletion

Category Permissions

Set category-specific permissions:

  • View Category - Who can see the category
  • Create Discussions - Who can start discussions
  • Reply to Discussions - Who can post replies
  • Moderate - Who can moderate this category

Discussions

Creating Discussions

As a User:

  1. Navigate to a category
  2. Click "New Discussion"
  3. Fill in:
    • Title - Clear, descriptive title
    • Content - Discussion content (Markdown supported)
    • Tags - Relevant tags (optional)
    • Attachments - Upload files (if enabled)
  4. Click "Create Discussion"

Best Practices for Titles:

  • Be specific and descriptive
  • Use proper capitalization
  • Avoid all caps or excessive punctuation
  • Search before posting to avoid duplicates

Discussion Features

Pinning Discussions

Pin important discussions to the top:

  1. Open discussion
  2. Click "Pin" (admin/moderator only)
  3. Discussion appears at top of category

Locking Discussions

Lock discussions to prevent new replies:

  1. Open discussion
  2. Click "Lock" (admin/moderator only)
  3. Users can view but not reply

Moving Discussions

To move a discussion to another category, edit it and change its Category field (admin/moderator, or the author within the edit window). When deleting a category you can also choose Move Discussions to relocate its content instead of deleting it.

The Pro plugin FlatModerationExtend adds a dedicated Move action from the first post's dropdown, plus bulk move from the discussion list.

Deleting Discussions

  1. Open discussion
  2. Click "Delete" (admin/moderator only)
  3. Confirm deletion

Discussion Sorting

Users can sort the discussion list by:

  • Latest - Most recently active (default)
  • Newest - Most recently created
  • Oldest - Oldest first
  • Most Replied - Highest reply count
  • Most Viewed - Highest view count

Discussion Filtering

Discussions are filtered by tag: click any tag (in a discussion row or on the public Tags page) to list every discussion that carries it — so tags double as a way to sort and browse content by topic. For broader queries (by date, or within a specific category), use the search.

Posts

Creating Posts

Posts are replies within discussions:

  1. Open a discussion
  2. Scroll to reply box
  3. Write your reply (Markdown supported)
  4. Add attachments if needed
  5. Click "Post Reply"

Post Features

Editing and Deleting Own Content (time limits since 5.6.0)

Members can edit or delete their own discussions and replies within configurable time windows. Moderators are never subject to these limits.

LimitDefaultBehaviour
discussion.edit_time_limit60 minutesWindow during which the author can edit their discussion
discussion.delete_time_limit30 minutesWindow during which the author can delete their discussion
post.edit_time_limit60 minutesWindow during which the author can edit their reply
post.delete_time_limit30 minutesWindow during which the author can delete their reply
discussion.delete_requires_no_repliestrueBlock deletion of a discussion that already has replies
discussion.edit_requires_no_repliestrueLock-on-reply — lock the discussion (uneditable by author) as soon as any reply arrives
post.edit_requires_no_repliestrueLock-on-reply — lock a reply once a newer one is posted; only the most recent reply stays editable

When a member attempts to edit/delete past the window, they see a specific message (permission.discussionEditTimeLimit, permission.postEditRequiresNoReplies, etc.) rather than a generic 403.

Configure these from Admin → Settings → Content or directly in config.json — see the Configuration guide.

Soft vs hard delete

  • Own Posts — Users can delete their own posts within the time window
  • Moderator Delete — Moderators can delete any post
  • Soft Delete — Posts may be soft-deleted (hidden but recoverable) depending on plugin (e.g. FlatModerationExtend)

Post Reactions

Users can react to any post using emoji buttons displayed below the content. Click a reaction to toggle it; click it again to remove it. Hovering a reaction shows the count and who reacted.

Available reaction types (name, emoji, colour, display order) are configured by administrators at Admin Panel > Discussions > Reactions.

Post Mentions

Mention users in posts:

  • Use @username syntax
  • Mentioned users receive notifications
  • Mentions are clickable links

Draft Auto-save

While composing a discussion or a reply, Flatboard automatically saves a draft every few seconds. A discrete "Draft saved at HH:MM" indicator appears below the editor.

If you leave the page and return before submitting, a dialog offers to restore the saved draft (title, content, category, and tags are all restored). Declining the prompt deletes the draft. The draft is also deleted automatically when the form is submitted successfully.

Discussion Subscriptions

A bell button is displayed on every discussion page. Clicking it subscribes you to the discussion — you will receive a notification whenever a new reply is posted.

  • Click Subscribe (bell icon) to follow a discussion
  • Click Unsubscribe to stop receiving notifications
  • Your subscriptions are listed in your profile under Subscriptions

To subscribe automatically to every discussion you create, enable Auto-subscribe to new discussions in Profile > Settings > Notifications.

Post Moderation

Moderators can:

  • Edit Posts - Modify content
  • Delete Posts - Remove posts (soft delete available via FlatModerationExtend)

Tags

Using Tags

Tags help organize, sort and find content:

  1. When creating a discussion, add tags
  2. Separate multiple tags with commas
  3. Reuse an existing tag or create a new one inline; admins can also create tags from Admin → Tags (see below)
  4. Tags are clickable: selecting one lists every discussion that carries it, so they act as a way to sort and filter content by topic
  5. The public Tags page (/tags) shows all tags ordered by usage, as a browsable entry point

Tag Management

Access: Admin Panel > Discussions > Tags

Creating a tag from the admin (since 5.7.1)

Before 5.7.1 a tag could only be created by typing it into the Tags field of a discussion, which left the admin Tags page empty and with no obvious way to add anything on a fresh install. A Create tag button now sits in the page header and opens a modal with a name field, a FontAwesome icon picker and a colour picker, with a live preview badge. It posts to the admin-only, CSRF-protected route POST /admin/tags/create, which slugifies the name, rejects duplicates, fires the tag.created hook and reloads the list.

Editing existing tags

Since 5.4.0 the tag admin page lets you fully edit existing tags. The edit modal exposes:

FieldNotes
NameDisplay name
SlugURL-friendly identifier (auto-generated from name on creation)
Color (since 5.3.4)Hex value, with a live preview badge. Applied to the .flatboard-tag badge across all discussion lists and the public /tags page. WCAG relative-luminance contrast is computed so the label stays readable on light or dark backgrounds.
Icon (since 5.3.4)FontAwesome class string, picked from the shared icon-picker (Solid / Regular / Brands tabs, with live search; 548 brand icons available). Replaces the hardcoded fas fa-tag fallback wherever the tag is rendered.

Update, delete and rename all run as AJAX — the row updates in place without a page reload. The admin table also has a live search input (name/slug), a per-page selector (25/50/100/all), and client-side pagination.

Internally the count column is fed by a single batched query (countAllDiscussionsByTag()), so the page loads in two operations regardless of how many tags exist.

Tags Page Redesign (since 5.6.0)

The public /tags page used to be a flat badge cloud with no usage information. It is now a compact card grid (5+ columns on desktop):

  • Each card shows the tag icon in its colour, the tag name, and the discussion count below
  • Tags are sorted by discussion count descending
  • A coloured left-accent bar preserves the per-tag colour
  • Admin/mod delete buttons with inline confirmation are retained

Grouped Tags +N Popup on Discussion Lists (since 5.3.4)

Tags in discussion list rows are displayed in a compact stacked group — each tag overlaps the previous by 0.5rem with a body-background outline ring for visual separation. Only the first 3 tags are shown inline; a +N dashed pill badge indicates the count.

Clicking the badge opens a .flatboard-tags-overflow popup card positioned absolutely above the row with a CSS arrow and box-shadow — fully out of normal flow so the discussion layout never shifts. All overflow tags inside the popup are fully clickable links. Clicking outside the popup or pressing Escape closes it; a second click on the badge toggles it off.

Dark mode is supported via [data-bs-theme="dark"] overrides. Applied to all four discussion-item partials (premium, ClassicForum, IPB, default).

Tag Best Practices

  • Use consistent naming
  • Keep tag count reasonable (3-5 per discussion)
  • Use descriptive, specific tags
  • Review and clean up tags regularly

Search and Discovery

Search Functionality

Search by type:

  • Discussions
  • Posts (by content)
  • Users (by username)
  • Or All at once

Search Filters:

  • Restrict to a specific category
  • Filter by one or more tags
  • Filter by date range (from / to)

Discovery Features

  • Discussion list sorting - Surface recent or popular threads via the sort options (latest, newest, most replied, most viewed)
  • Tags page (/tags) - All tags ordered by usage, as a topic-based entry point
  • User profiles - Each member's recent discussions and replies are listed on their profile

Moderation Tools

Reports

Handle user reports:

  1. Access reports in admin panel
  2. Review reported content
  3. Take appropriate action:
    • Dismiss invalid reports
    • Warn users
    • Delete content
    • Ban users

Bulk Actions (requires FlatModerationExtend — Pro)

Multi-select moderation is not part of core — it is added by the Pro plugin FlatModerationExtend, from both the admin panel and the frontend discussion list:

  • Bulk delete discussions
  • Bulk move to another category
  • Bulk lock / unlock
  • Bulk pin / unpin
  • Bulk hide / show and mark as solved

The same plugin also adds a shadow-ban system, a pre-moderation queue, frontend post bulk-delete, and discussion merge.

Best Practices

Category Organization

  • Logical Structure - Organize by topic or purpose
  • Clear Names - Use descriptive category names
  • Helpful Descriptions - Explain category purpose
  • Reasonable Count - Don't create too many categories

Discussion Management

  • Clear Titles - Descriptive discussion titles
  • Proper Categorization - Place in correct category
  • Use Tags - Tag appropriately
  • Moderate Actively - Handle reports and issues

Content Quality

  • Encourage Quality - Guide users to post well
  • Set Guidelines - Create posting guidelines
  • Moderate Fairly - Consistent moderation
  • Engage Community - Participate in discussions

Troubleshooting

Discussion Not Appearing

Check:

  1. Category permissions
  2. User permissions
  3. Discussion is not deleted
  4. Cache issues

Can't Create Discussion

Check:

  1. User has create permission
  2. Category allows new discussions
  3. Rate limiting not blocking
  4. User is not banned

Search Not Working

Solution:

  1. Clear search cache
  2. Rebuild search index
  3. Check search permissions
  4. Verify search configuration

Resources

Last updated: June 10, 2026