Blog MX for Magento 2

View Demo

Blog MX runs your blog inside Magento, with Page Builder posts, comments, and SEO checks in the admin you already use. Every post, category, author, and tag can differ per store view.

  • Score every post for SEO before publishing
  • Move an existing blog over for free
  • Format the content with Page Builder
  • Organize posts with categories and tags
  • Moderate comments without leaving Magento
  • Add related products to any post
Need real-life examples?
Check out our blog: it has run on Blog MX since 2022, with over 100 posts.
Free migration from other extensions
Our team moves your posts, categories, and authors across from WordPress or another blog extension, at no charge.
Marketplace Approved
Hyvä
Magento Cloud
Tailwind JIT
WCAG
Mage-OS
Compatible with:
Community:
2.3.* - 2.4.9
Enterprise:
2.3.* - 2.4.9
Problem

Content brings people to your store before they are ready to buy. Magento has no blog of its own, so most merchants end up running one on a separate platform, with a second admin panel, a second theme to maintain, and product links that go stale.

Solution

Blog MX puts the blog inside Magento. Posts, categories, authors, and comments live in the admin you already use, on the theme you already run.

Why choose the Blog MX module for Magento 2

A blog on your own domain earns traffic that keeps paying after the ad budget stops. The reason to run it inside Magento rather than next to it comes down to three things.

Search engines find your posts without extra work

New articles are added to the Magento XML sitemap automatically, so Google learns about a post that nothing links to yet.

Each post, category, author, and tag page gets a canonical URL, its own robots directive, and hreflang alternates when you run several languages. Structured data is emitted as BlogPosting or NewsArticle, with the properties and description source you choose.

Articles send readers into your catalog

Because the blog shares a database with the store, a post can pull in live products: hand-picked, or filled automatically from a catalog category so the block keeps itself current as the category changes.

Posts can also surface on product pages, category pages, and even the 404 page, which turns a dead end into a reading list.

Publishing stays a Magento job

One admin, one theme, one set of user permissions. Writers work with Page Builder, the same editor they use for CMS pages, and the blog inherits your storefront design instead of imitating it.

The frontend is built from widgets and is tested against Luma and Hyvä, with WCAG 2.2 AA accessibility checked as part of that work.

Speed up your blogging process

Blog post edited in Magento Page Builder

Page Builder support

Write posts in Magento Page Builder: rows, columns, lists, images, and video, with no separate editor to learn.

Our quick start guide walks through the first post, from creating an author to putting the blog on your storefront menu.

Post preview opening in a new tab

Publish polished content

Preview shows the article exactly as readers will see it, on the storefront theme, before anything goes live.

It catches what a draft view cannot: layout that breaks at the wrong width, an image that sits in the wrong place, a headline that wraps badly.

Store view selector on the post edit form

A different blog for every store view

Most extensions treat multi-store as translation. Blog MX treats it as separate content. Switch a post to a store view and almost every field gains a "use default" toggle you can clear:

  • Posts: title, excerpt, body, featured image and its alt text, URL key, meta title, description and keywords, author, publish and last-modified dates, status, and whether the post is pinned.
  • Categories: name, content, status, sort order, URL key, and meta tags.
  • Authors: name, job title, photo, short and full bio, URL key, and meta tags.
  • Tags: name and URL key.
  • Layouts: each store view can use its own page layout or inherit the shared one.

So a German store view can run a different article, under a different URL, by a different author, on a different layout, while the rest of your stores keep the original. Admin and storefront text ship in 16 languages.

Simple cross-sell and up-sell

Related products block inside a blog post

Drop the Related Products widget into a post and choose where the products come from: a manual list you arrange by drag and drop, or a catalog category that fills the block for you and follows that category's own anchor and sorting settings.

If you run Automatic Related Products, its selection rules become a third option. Sort order, direction, and the product list itself can differ per store view.

Publish date and time field on a post

Plan your publishing

Set a future date and time and the post appears on its own, which is what makes an editorial calendar or a news section practical to keep.

Deleted posts go to a Trash bin rather than disappearing. Restore one and it comes back with its original URL and related-post links intact; anything older than your retention period, 30 days by default, is cleared by cron.

Move your existing blog over

Switching platforms usually stalls on the archive, so we do that part for you: our team migrates posts, categories, authors, and images from WordPress or another Magento blog extension, free of charge.

The same applies if you are still on the old free Mirasvit blog module. Ask support before you install and we will plan the upgrade.

Make your blog on Magento visually unique and easy to navigate

Nested blog categories in the storefront navigation

Easier navigation with a multi-level structure

Nest categories as deep as the subject needs, and let the category widget show either the whole tree or just the branch the reader is currently in.

Search suggestions appearing under the blog search bar

Instant blog search

The search box works both ways: suggestions appear as the reader types, and a full results page is there for longer queries.

Native Magento search does not look inside blog posts at all. With Search Ultimate installed, your articles also show up in the main store search and its autocomplete, alongside products.

Dragging a widget in the blog layout editor

Configure the blog layout with drag and drop

Build each page type in the Layout Editor: choose a one or two column layout, then drag blocks into the main column and the sidebar. Saving clears the relevant cache, so the storefront updates immediately.

Deeper design changes still belong in your theme templates, and the code ships unencrypted so your developer can make them.

Prebuilt widgets for quick blog layout design

Widget type dropdown in the Magento admin

The whole frontend is made of widgets, and there are 12 types to work with: posts, post view, post comments, related products, category list, tag cloud, search box, author, newsletter, RSS, CMS block, and post list.

The Posts widget alone ships 8 templates, from a single hero article to card grids and sidebar sliders.

List of available Blog MX widgets

Blog in Magento 2 with custom widgets and templates

Widgets go on any page of the store, not only blog pages, and they read the context of the page they sit on: put a post list on a category page and it shows posts for that category.

Need something the templates do not cover? Point a widget at a custom template in your theme.

Promote blog posts on the pages of your store

Recent posts block on a 404 page

Recent or related articles can sit on product pages, category pages, or the 404 page, where a list of posts is more useful than a dead end.

Related posts are ordered by relevance: articles sharing the most tags come first, then ones in the same category.

Establish trust with readers through author pages

Author page with photo, bio, and article list

Give each writer a page with a photo, a bio, and links to their profiles, then let readers browse everything that author has written.

Named authors with visible credentials read as more trustworthy, to people and to the systems that assess content quality. Posts also carry an author meta tag and per-store author overrides, so a translated article can credit the person who actually wrote that version.

Let your readers promote your blog articles

Social sharing buttons under a blog post

Sharing runs on AddToAny: paste your button code into the settings and pick whichever networks your readers actually use. Because the set is yours, you are not stuck with someone else's list of icons.

Let readers leave comments in blog to boost engagement

Comments are included, and they run on your own site rather than through a third party.

Guests can post, optionally with a required email address, or you can limit commenting to signed-in customers. Turn automatic approval off and everything waits in a moderation queue in the admin, where you approve, reject, or reply. Admins are notified about pending comments, participants get an email when someone answers them, and readers can vote a comment helpful or unhelpful. Facebook comments remain available if you prefer them.

Small things that keep people reading

Posts show an estimated reading time and a progress bar as the reader scrolls, and a table of contents widget builds itself from the headings you choose.

You can also publish a post by direct link only, protected with a password, which is handy for an embargoed announcement or a page meant for one client.

Get into Google's top with embedded SEO features

Check content quality across the whole blog

Content quality score panel on a post

Every post gets a content score, and the Content Checker screen lists all of them in one grid so you can see which articles need work instead of opening them one by one.

It also flags posts containing links that lead nowhere and images that fail to load, which is the kind of rot that accumulates quietly in an older archive.

You decide what the score means: switch individual checks on or off and set how much each one counts. Scores are stored per store view, calculated in the background so saving a post is never slow, and available over the REST API. Access is controlled by its own permission.

Simple interface for meta tags

Meta title and meta description fields on a post

Meta title, description, and keywords sit right below the content, and each can be overridden per store view.

Robots directives are set per entity, so you can noindex a thin tag page while leaving posts indexable, and the blog keeps its own default separate from the site-wide Magento setting.

Automatic SEO-friendly URLs

Readable URL key generated from a post title

Google recommends keeping URLs readable, and Blog MX builds one from the post title automatically.

Set a base URL and a suffix to shape the whole blog's URL structure, and external links in post content can be given rel="nofollow" in bulk.

Blog entries listed in the Magento XML sitemap

Automatically updated sitemap to inform Google about your new blog posts

A new post has no inbound links yet, so Google may take weeks to notice it. Blog MX adds posts and categories to the Magento XML sitemap as they are published.

If you want sitemap rules across the whole store rather than the blog alone, that is what Advanced SEO Suite is for.

Rich results for your articles

Posts are marked up as BlogPosting or NewsArticle, with author, publish date, and last-modified date, so Google can render your article the way it renders news.

You choose which optional properties to include and whether the description comes from the excerpt or the meta description. Dates carry proper timezone data.

Score a post before it goes live

SEO score report for a single post

Run the check from the post edit page and you get a report on the things that are easy to forget: whether your keyword appears in the meta tags, whether those tags are the right length, whether the article has images.

Each finding comes with a recommendation, so the fix does not require guessing.

Write with AI, if that is how you work

Blog MX works with our AI Assistant extension: it can draft titles, generate post content and images, and run automation rules over posts and categories, including per store view. AI Assistant is a separate product, not part of this module.

See Blog MX running on the demo store, front and back
No hidden fees
Lifetime access to source code
Access to free support and updates for 1 year
Updates and support prolongation - $132

Pay today $219 for the first year.

Then $132 for updates and support services per year.

Cancel anytime.

30 days money back guarantee
See it in action!
Pick a quick tutorial to learn about various aspects of this extension
Customer Reviews 19
Earn points for your review about this extension modules. $1 = 10 points
Write Your Own Review

check-circle You submitted your review for moderation.

Łukasz Verified Buyer
From Gdańsk, Poland
Using the module for over 1 year
Good blog for magento.
Very much configuration options, nice view o hyva theme, good price for value.
Also installed:
Advanced SEO Suite,  Improved Sorting,  Mass Product Actions,  Order Management,  Admin Bookmarks,  Product Labels,  GDPR and 16 more
Bruno Verified Buyer
From Feira, Portugal
Using the module for over 1 year
Awesome module
Probably the best module for a blog. Plays very well in Hyva stores. The version 2.x is extremely good.
Also installed:
Knowledge Base,  GDPR,  Facebook Pixel & Conversion API,  Advanced Reports
TooManyBugs Verified Buyer
From Denmark
Using the module for 7 months
Too many bugs
In general, the blog extention has too many bugs for being a great extention. Like the review from "bl0gr" i experience the exact same thing - obvious bugs occuring, making me think i'm the only one using the extention. Upside is the same, support is good at fixing them, this is also good, but for a paid extention i'm expecting more quality. The task in creating and testing for mirasvit, is just too timeconsuming.
Also installed:
Layered Navigation,  Shipping Table Rates,  Google Tag Manager,  Elastic Search Ultimate,  Product Labels,  RMA,  Product Attachments and 12 more
bl0gr Verified Buyer
From Halstenbek, Germany
Using the module for over 1 month
Too many bugs
I know this review will never see the light of day. But since you just asked me to write a review...
Since I bought this module I stumbled onto way too many way too obvious bugs I had to report and/or fix myself.
Those bugs are so obvious that I came to think I might be the only one actually using/implementing it.
Upside: your support has taken care of most of my reports to this date.
But for a paid module the overall quality is not satisfactory.
Also installed:
Layered Navigation,  Elastic Search Ultimate,  Affiliate,  Follow Up Email,  Product Kits ,  Product Attachments
Jelcke Verified Buyer
From Amsterdam, Netherlands
Using the module for 9 months
Great BLOG tool for Magento store owners
B log MX is a fully featured blogging suite. It's a perfect way to provide your customers with valuable content, boosting your store's search rankings and driving precious organic traffic your way.
https://www.amstelbooks.com
Also installed:
Advanced SEO Suite,  Advanced Product Feeds,  Social Login
Manual & Support
Need more help?

Save time by starting your support request online and we'll connect you to an expert.

Frequently asked questions
chevron-down chevron-right

Do blog posts get added to the XML sitemap?

Yes, and it is built in. Turn on Sitemap in the Blog MX configuration and your posts and categories are added to the Magento XML sitemap automatically, so search engines can find new articles without waiting for another page to link to them.

You only need Advanced SEO Suite if you want more than that from your sitemaps across the whole store: change frequency and priority rules, image and hreflang entries, and splitting large sitemaps. For the blog alone, Blog MX is enough.

chevron-down chevron-right

Can I change the blog layout from the Magento admin?

Yes. The Layout Editor under Content > Blog MX lets you build each blog page type separately: pick a one or two column layout, then drag widgets into the main area and the sidebar. Saving a layout clears the relevant full page cache, so the change is live right away.

Each store view can have its own layout, or inherit the default one. Where the editor stops is theme-level design: fonts, colours, and spacing come from your storefront theme, and deeper changes are made in template files. The code ships unencrypted, so your developer can edit those templates freely.

chevron-down chevron-right

Is there still a free version of Blog MX?

No. Blog MX started as a free extension, but that package was retired: its last release was in 2020, it is marked as abandoned on Packagist, and it does not support current Magento versions or receive security fixes. We do not recommend installing it.

If you are still running the old free module, you can move to Blog MX and keep your posts, categories, and authors. Ask our support team and we will handle the upgrade for you.

chevron-down chevron-right

Is Blog MX a PWA-ready extension?

No. Blog MX renders through Magento templates and is fully responsive, including on Hyvä, so it works well on phones and tablets. You can see it on the demo store.

What it does not do is run as a headless or PWA storefront: there is a REST API for blog entities, but no GraphQL layer, so the blog cannot be published as a standalone app on the App Store or Google Play. If your storefront is headless, this is the limitation to weigh.

chevron-down chevron-right

Can readers comment, and how do I keep spam out?

Comments are included, with no third-party service required. Guests can comment or you can restrict commenting to logged-in customers, and you can require an email address from guests. Readers can vote comments helpful or unhelpful.

For moderation, turn off automatic approval and every comment waits in a queue in the admin, where you can approve, reject, or reply to it. Admins get notified about pending comments, and thread participants get an email when someone replies. If you would rather use Facebook comments instead, that remains an option in the settings.

Changelog
Version 3.6.11Aug 5, 2026
Related products can now be pulled from a catalog category — the post edit page gains a Related products source selector with three options: Manual (the hand-picked product list, as before), From category (all products of one catalog category), and From Related Products rule (shown only when the Mirasvit Related Products extension is installed). With From category you pick a single Source category and the post's related products block fills itself from that category automatically — no more re-picking products by hand every time the category changes. The block follows the category's own Is Anchor setting (so subcategory products are included exactly as they are on the category page) and its Default Sort By. How many products are shown is set in Stores → Configuration → Blog MX → Related products settings → Number of products from category (12 by default). If the chosen category is later deleted, disabled, or moved out of the store's tree, the block simply doesn't render instead of showing an error.
Sort order for related products — new Order by (Default, Product name, Price, Creation date) and Direction (Ascending, Descending) fields let you control how the related products are arranged on the post page. Default keeps each source's natural order: for a manual list that is now the exact drag-and-drop order you arranged in the grid, and for a category it is the category's own sort order.
Per-store-view related products — the related products source, source category, order, direction, and the manual product list itself can now differ per store view. Switch the post to a store view and each of these fields gains the standard Use Default checkbox: leave it on to inherit the global value, or clear it to set something different for that store only. Previously the manual product list was shared by all store views.
⚠️ Database schema change — the mst_blog_post table gains four nullable columns (related_products_source, related_category_id, related_products_order, related_products_direction), and mst_blog_post_store gains the same four plus product_ids to hold the per-store overrides (NULL means "inherit the global value"). These are applied automatically on upgrade; no manual action is required.
Content Checker notes are now translated — the recommendations on the post's SEO score panel used to leave parts of the sentence in English even on a translated admin (the field name being checked, the word "characters", and the Broken / Working headings). Everything is translatable now, the wording is clearer and consistently punctuated, and translations for all 16 shipped languages were refreshed. The URL-key conflict message and the tag Robots tooltip were also reworded and their stray spacing fixed.
Related Products rule fields are read-only in a store view — when a post sources its products from a Related Products rule, all five rule settings are now consistently greyed out in a store-view scope (previously two were, three stayed editable) since the rule is a global setting configured in All Store Views.
Fixed a Blog MX Posts widget rendering nothing at all — no title, no posts, no error in the log. It happened when the page had more widget slots than the blog has posts and Prevent duplicate posts in widgets was on: whichever widget rendered last found every post already claimed by an earlier one and silently disappeared. Which widget lost depended on the theme — on Luma the sidebar's Recent Posts, on Hyvä a Related Posts widget placed inside the post body. Duplicate suppression is now dropped for that widget rather than leaving it blank.
Fixed a "500 Internal Server Error" when opening a blog post URL that points to a post id which no longer exists. Such URLs now return a proper 404 page.
Fixed the Remove button in the manual related-products list staying clickable in a store-view scope while the list was inheriting the global value, which allowed editing a list that was supposed to be read-only.
Version 3.6.10Jul 23, 2026
Fixed the Template dropdown when configuring a Blog MX widget so it now lists templates from your custom storefront theme, not just the built-in Default one. Previously the theme scan only matched deeper folder paths and missed standard themes (stored as Vendor/theme), leaving custom templates unavailable to pick.
Version 3.6.9Jul 16, 2026
Fixed a false "URL key already exists" error when two posts share the same URL key but are assigned to different store views. This commonly happens after a Magento 1 migration, where each language has its own post on its own store view. Such posts can now coexist and be re-saved without conflict, while genuine duplicates on the same or global store scope are still blocked. The same fix applies to categories, tags, and authors.
Version 3.6.8Jul 13, 2026
Per-store author and publish dates — you can now set a different author, publish date, and last-modified date for each store view of a post, while keeping a shared default. On the post edit page the Author and Published on fields (plus a new Last modified on field) gain the standard Use Default toggle when you switch to a specific store view: leave it on to inherit the global value, or turn it off to override it just for that store. The storefront byline, dates, and schema.org data reflect whichever value applies to the store view being viewed.
⚠️ Database schema change — the mst_blog_post_store table gains a nullable author_id column, and its created_at column becomes nullable, so a NULL value means "inherit the global value". These changes are applied automatically on upgrade; no manual action is required.
Version 3.6.7Jul 13, 2026
Trash (recycle bin) for posts — deleting a post now moves it to a Trash bin instead of removing it for good, so an accidental delete is no longer permanent. A new Content → Blog MX → Trash page (also reachable from the Blog MX flyout menu) lists every deleted post. From there you can Restore a post back to your blog or Delete permanently — one post at a time from the row actions, or several at once with the mass actions. The Delete button on the post edit page now sends the post to Trash as well.
Automatic Trash cleanup — a new Stores → Configuration → Blog MX → Trash → Retention period (days) setting controls how long deleted posts stay in the bin (30 days by default). A daily cron then removes anything older automatically. Set it to 0 to purge on the next cron run.
Deleted posts disappear from the storefront — posts moved to Trash are hidden from blog listings immediately, and opening a deleted post's old URL directly returns a proper 404. Restoring a post frees its original URL again and brings it back exactly as it was, with its related-post links intact.
⚠️ Database schema change — two columns (is_deleted, deleted_at) are added to the mst_blog_post table to track Trash status. They are created automatically on upgrade; no manual action is required.
Reasons to choose Mirasvit
Client focusing and satisfaction

These are our primary. A major portion of our new clients come from referrals from our existing clients. Our professional team of developers, marketers and support staff have invested the best knowledge and experience in the field into our work, so you know you can come back to us again and again.

Remarkable support

One year free and high quality support. We go to great lengths to provide maximum satisfaction with every module you have purchased in our store. By helping you with installation, configuration, answering your every question, we do all our best to eliminate any possible problems.

Risk-free Investment

30-days money back guarantee. If you are not satisfied with our Magento 2 blog extension performance for any reason, we provide a full refund.

Constant improvements and upgrades

We constantly add new features to all our modules, and are always interested in hearing your opinion and implementing your suggested features in our future developments.

Comprehensive Documentation

We provide an expanded user guide for every aspect of our Magento 2 blog extension, so you can find answers for all your burning questions.

Unencrypted source code of our products

You can customize Magento 2 blog extension according to your needs and requirements.

Usability and Performance

The Module is easy to install and upgrade, just follow our step-by-step user guide. Additionally, the extension is ready to use with the Hyvä theme.

Ready for Magento Cloud

No core modifications. The Magento 2 blog extension has been tested in a Magento Cloud environment and is fully compatible with it.

Loading...