fof / blog
Adds a blog section to your forum
Fund package maintenance!
Requires
- ext-json: *
- flarum/core: ^2.0.0
- flarum/lock: ^2.0.0
- flarum/tags: ^2.0.0
Requires (Dev)
- flarum/audit: ^2.0
- flarum/phpstan: ^2.0.0
- flarum/testing: ^2.0.0
- fof/rich-text: ^2.0
- fof/seo: ^4
- fof/upload: *
Suggests
- fof/seo: Adds Flarum SEO and social media tags
- fof/upload: Upload images for blog posts
Replaces
This package is auto-updated.
Last update: 2026-07-23 14:33:48 UTC
README
A Flarum extension that adds a blog section to your forum — a dedicated blog overview, article pages, and an article composer, built on top of your existing discussions and tags.
Documentation
Full documentation lives in the docs/ folder:
Requirements
- Flarum 2.0 or above (PHP requirements follow Flarum's)
flarum/tags— articles are tag-basedflarum/lock— powers per-article comment locking
Looking for the Flarum 1.x compatible version? Use the
1.xbranch /fof/blog^1.0.
Installation
composer require fof/blog:"*"
Updating
composer update fof/blog php flarum migrate php flarum cache:clear
Migrating from v17development/flarum-blog
This extension was transferred to FriendsOfFlarum and was previously published as v17development/flarum-blog.
For forum admins, migration is a one-line change — swap the package, keep your settings and existing blog articles:
composer remove v17development/flarum-blog composer require fof/blog php flarum migrate php flarum cache:clear php flarum assets:publish
fof/blog declares replace: { "v17development/flarum-blog": "*" }, so anything that depended on the old package is satisfied by the new one, and the two can never be installed at once.
Third-party extension authors should update any references from the V17Development\FlarumBlog PHP namespace to FoF\Blog, and from the v17development/blog / v17development-flarum-blog frontend modules to fof/blog.
Note: SEO integration now targets
fof/seo(FoF\Seo). If you relied on SEO tags for your blog, ensurefof/seois installed and enabled.
Upgrading from 1.x
Version 2.0 targets Flarum 2.0 and modernises the extension throughout. Notable changes for integrators and theme authors:
- CSS classes were consolidated onto the
FoFBlog-prefix (previously a mix ofFlarumBlog-,Flarum-Blog-andV17Blog-). Custom themes targeting the old classes need updating. - API: the discussion index no longer includes
blogMeta/firstPostby default — request?include=blogMetaexplicitly. Single-discussion responses still includeblogMeta. When creating an article viaPOST /api/discussions, the blog metadata travels as the write-onlynewBlogMetaattribute (previouslyblogMeta). - PHP: several classes moved to conventional namespaces (e.g. the model is now
FoF\Blog\BlogMeta). See the developer reference. - New domain events (
ArticleApproved,ArticleFeatured,ArticleUnfeatured,BlogMetaUpdated) and an optional flarum/audit integration. - Users with approve posts can now publish pending articles without also holding write articles.
Features
- Adds a Blog overview page and article detail pages to your forum
- An article composer for writing blog posts
- Builds on the
flarum/tagsextension — articles are tag-driven discussions - Per-article summary and featured image
- Highlighted (featured) posts on the overview
- Categories sidebar, with optional category hierarchy
- Optionally disable or allow comments by default
- Optional review workflow — articles can require approval before publishing, with dedicated write/approve permissions
- Set the blog overview as the forum home page
- Works with already-existing discussions/articles
- Ghost (skeleton) loading states
- Configurable default article image, stored on the
flarum-assetsfilesystem disk
Works with
Compatible — but not required — alongside:
- flarum/sticky — sticky indicator on articles
- flarum/audit — audit log entries for article creation, approval, (un)featuring and meta edits
- fof/seo — SEO meta & structured data for blog pages
- fof/upload — pick a featured image from your uploaded files
- fof/rich-text — rich-text editing in the composer
- fof/discussion-language — per-language blog overviews
Screenshots
Blog overview page
Blog article
Blog tools
Blog settings
Admin settings
Credits
This extension was originally created and maintained by V17 Development as v17development/flarum-blog. FriendsOfFlarum is grateful for their work and continues development with their blessing.
Sponsored by Glowing Blue.
Links
License
This extension is licensed under the MIT License. See the LICENSE.md file for details.




