mage2kishan/module-blog
Composer 安装命令:
composer require mage2kishan/module-blog
包简介
Panth_Blog — SEO-grade blog module for Magento 2 with first-class AEO/AIO support: JSON-LD, llms.txt, IndexNow, hreflang, markdown export, RSS/Atom feeds, and Hyva-first templates. Built to plug into the Panth_* ecosystem.
关键字:
README 文档
README
Magento 2 Blog Extension: SEO-Grade Blog with JSON-LD, llms.txt, IndexNow, RSS and Hyva/Luma Templates
Add a full-featured, SEO-ready blog to your Magento 2 store. Panth Blog gives every post valid JSON-LD schema, AI-search readiness via llms.txt and IndexNow, RSS and Atom feeds, Markdown export, and responsive templates for both Hyva (Alpine.js) and Luma.
Product page: kishansavaliya.com/magento-2-blog.html
Quick Answer
What is Panth Blog? It is a Magento 2 blog extension built for SEO, Answer Engine Optimization (AEO), and Generative Engine Optimization (GEO). It adds a blog to your store with posts, categories, tags, authors, and comments, and emits valid JSON-LD structured data on every page.
What does it add to my store?
- A full blog with posts, hierarchical categories, tags, authors, and an optional comment system.
- JSON-LD schema (BlogPosting, Person, BreadcrumbList, FAQPage, HowTo, CollectionPage, ProfilePage) on every page type.
- llms.txt + llms.json integration so AI crawlers like GPTBot and ClaudeBot can index your blog content.
- IndexNow auto-pinging to notify Bing and Yandex within minutes of publishing a post.
- RSS 2.0 and Atom 1.0 feeds site-wide and per category, tag, and author.
- Markdown export at
/blog/<slug>.mdfor headless and AI use cases. - TL;DR auto-extraction, table of contents, reading time, and share buttons.
Which themes are supported? Both Hyva (Tailwind + Alpine.js, no jQuery) and Luma (complete BEM stylesheet, no Tailwind dependency). The storefront looks the same on both.
What does it need? Magento 2.4.4 to 2.4.8, PHP 8.1 to 8.4, and the free mage2kishan/module-core package.
Need Custom Magento 2 Development?
Get a free quote for your project in 24 hours for custom modules, Hyva themes, performance work, M1 to M2 migrations, and Adobe Commerce Cloud.
Visit our website: kishansavaliya.com | Get a quote: kishansavaliya.com/get-quote
Table of Contents
- Who Is It For
- Key Features
- Compatibility
- Installation
- Configuration
- How It Works
- URL Structure
- Admin Management
- Screenshots
- JSON-LD Schema
- AI Integration
- RSS and Atom Feeds
- Markdown Export
- CLI Commands
- Cron Jobs
- REST and GraphQL APIs
- FAQ
- Support
- About Panth Infotech
- Quick Links
Who Is It For
- Stores that use content to drive organic traffic and want structured data and AI-search readiness built in, not bolted on.
- Merchants on Hyva who need a blog built with Tailwind and Alpine.js, with no jQuery or Knockout pulled back in.
- Teams publishing regular articles, guides, or tutorials who want authors, categories, tags, and related posts managed from the standard Magento admin.
- Developers building headless storefronts who need REST, GraphQL, and a Markdown export endpoint to consume blog content.
- Stores targeting AI-driven discovery (ChatGPT, Perplexity, Bing) where IndexNow pings and llms.txt exposure give published posts a faster path into AI indexes.
Key Features
Content Management
- Posts with title, URL slug, short description, full HTML content, featured image, OG image, per-post meta (title, description, robots, canonical override), layout template, and per-store content overrides.
- Hierarchical categories (up to 3 levels), banner image, per-category template and posts-per-page override, denormalized post count.
- Tags with thin-content guard: tags below the configured post-count threshold are automatically flipped to
noindex,follow. - Authors with display name, role, avatar, short and long bio, social links JSON, and
Person.knowsAbout,Person.alumniOf,Person.sameAsfields that feed directly into JSON-LD. - Comments with pending/approved/spam/trash workflow, threaded replies, per-IP rate-limit hooks, and captcha provider hooks. Disabled by default.
- Related posts with manual override and auto-suggest based on category overlap.
- Multi-store per-store post visibility and per-store content overrides.
- URL history with automatic 301 redirects when a post slug changes.
SEO and Structured Data
- JSON-LD per page type:
BlogPosting + Person + BreadcrumbListon single posts,CollectionPage + BreadcrumbListon category and tag pages,ProfilePage + Personon author pages,Blog + BreadcrumbListon the index. - Optional FAQPage schema when the
Panth_Faqinline widget is present on a post. - Optional HowTo schema auto-detected from numbered H2 headings.
- OG + Twitter Card meta with
og:type=article, published and modified timestamps, article section, and author fields. - Per-post meta fields:
meta_title,meta_description,meta_keywords,meta_robots,canonical_urloverrides. - Configurable title template with
{{post.title}},{{post.meta_title}},{{post.category}},{{post.author}}tokens. - Hreflang integration via
Panth_Hreflang(optional, class-exists guarded). - Sitemap and HTML sitemap contributors for
Panth_XmlSitemapandPanth_HtmlSitemap(optional, guarded). rel=prev/nextand canonical URLs on paginated archive pages.
AEO (Answer Engine Optimization)
- TL;DR auto-extraction: when the admin field is blank, the first 80-120 words are extracted on save and rendered as an
<aside data-aeo="tldr">callout above the article body. - Auto table of contents built from H2 and H3 headings; sticky on desktop, drawer on mobile.
- Reading time computed from word count and a configurable reading speed (words per minute).
- Citation footnotes from a
citation_listJSON column, rendered as numbered references and emitted asWebPage.citationschema.
AIO (AI Indexing)
- llms.txt integration: when
Panth_LlmsTxtis installed, blog posts are injected into/llms.txtand/llms-full.txtwith a configurable post count cap. - llms.json integration: a structured
blogsection is added to/llms.jsonwith URL, label, summary, andpublished_atper post. - Markdown export endpoint at
/blog/<slug>.mdwith YAML frontmatter, disabled per store if needed. - AI bot allow-list for user-agent tokens (GPTBot, ClaudeBot, PerplexityBot, Google-Extended) surfaced for
Panth_RobotsSeointegration.
GEO (Generative Engine Optimization)
- IndexNow auto-ping: an observer queues the post URL when it transitions to
published; a cron job drains the queue every 5 minutes in configurable batches. - Per-event toggles: notify on publish, notify on update, notify on delete.
- Manual ping CLI:
panth:blog:indexnow:ping --post-id=N.
Feeds and Discovery
- RSS 2.0 and Atom 1.0 feeds site-wide and per category, tag, and author.
- Full or partial content toggle per feed.
- Feed discovery via
<link rel="alternate">in every blog page<head>. - Feed cache via the
panth_blog_feedcache type with configurable TTL.
Storefront UX
- Hyva theme: Tailwind utilities and Alpine.js. No jQuery, RequireJS, or Knockout.
- Luma theme: a complete
pb-*BEM stylesheet with no Tailwind dependency. Same visual output as Hyva. - Responsive grid: 1 column on mobile, 2 at 768px, 3 at 1024px.
- Featured post block on page 1 of the index rendered as a two-column hero card.
- Sticky TOC on desktop, off-canvas drawer on mobile.
- Pagination with prev/next, pill buttons, and
rel="prev/next"head links. - Sidebar widgets: search, recent posts, categories, size-scaled tag cloud, subscribe, RSS link.
- Share buttons: Twitter, LinkedIn, copy URL.
Developer Experience
- REST API with full CRUD for posts, categories, tags, and authors.
- Read-only GraphQL queries:
panthBlogPosts,panthBlogPost,panthBlogCategories,panthBlogTags,panthBlogAuthors. - 8 CLI commands for URL rewrite rebuild, count refresh, OG image generation, post import/export, IndexNow ping, tag robots fix, and demo seeder.
- 6 cron jobs: publish-scheduled, refresh-counts, warm-feed-cache, drain-indexnow-queue, archive-stale-drafts, daily heartbeat.
- Strict DI: zero
ObjectManagercalls, constructor dependency injection throughout. - All cross-module hooks are class-exists guarded so the module runs cleanly without any optional sibling package installed.
Compatibility
| Requirement | Versions Supported |
|---|---|
| Magento Open Source | 2.4.4, 2.4.5, 2.4.6, 2.4.7, 2.4.8 |
| Adobe Commerce | 2.4.4, 2.4.5, 2.4.6, 2.4.7, 2.4.8 |
| Adobe Commerce Cloud | 2.4.4 to 2.4.8 |
| PHP | 8.1.x, 8.2.x, 8.3.x, 8.4.x |
| Hyva Theme | 1.3+ (Tailwind + Alpine.js) |
| Luma Theme | Native support (BEM stylesheet, no Tailwind dependency) |
| Required Dependency | mage2kishan/module-core (free) |
Installation
Composer Installation (Recommended)
composer require mage2kishan/module-blog bin/magento module:enable Panth_Core Panth_Blog bin/magento setup:upgrade bin/magento setup:di:compile bin/magento setup:static-content:deploy -f bin/magento cache:flush
Manual Installation via ZIP
- Download the latest release from Packagist or from the product page.
- Extract it to
app/code/Panth/Blog/in your Magento install. - Make sure
Panth_Coreis installed too (required dependency). - Run the commands above starting from
bin/magento module:enable.
Verify Installation
bin/magento module:status Panth_Blog
# Expected: Module is enabled
After install, open:
Admin → Panth Infotech → Blog → Manage Posts
Admin → Stores → Configuration → Panth → Blog
Optional: Seed Demo Data
bin/magento panth:blog:seed:demo
This creates 5 sample posts, 5 categories, 5 tags, and 5 authors. Useful for checking the storefront before adding real content. Running it a second time prints "already exists" rather than duplicating data.
Configuration
Go to Stores → Configuration → Panth → Blog.
| Setting | Group | Default | Description |
|---|---|---|---|
| Enabled | General | Yes | Master toggle for the blog. |
| Route Front Name | General | blog | URL prefix for all blog pages. Changing it requires a URL rewrite rebuild. |
| Blog Index Title | General | - | H1 and page title on the /blog index page. |
| Blog Index Meta Description | General | - | Meta description for the blog index. |
| Blog Hero Text | General | - | Subtitle shown in the hero header on the index page. |
| Posts Per Page | General | - | Number of posts per paginated page. |
| Reading Speed (words/min) | General | - | Used to auto-compute reading time on each post. |
| Show Reading Time | General | Yes | Display computed reading time on post pages. |
| Show Author Bio at Post Foot | General | Yes | Show author name, avatar, and bio at the bottom of each post. |
| Show Share Buttons | General | Yes | Show Twitter, LinkedIn, and copy-URL share buttons on post pages. |
| Show Table of Contents | Display | Yes | Auto-build and display a TOC from H2/H3 headings. |
| Related Posts Count | Display | - | Number of related posts to show below each post. |
| Default Category Template | Display | grid | Layout used for category listing pages (grid/list/magazine). |
| Sidebar: Categories | Display | Yes | Show categories widget in the blog sidebar. |
| Sidebar: Tag Cloud | Display | Yes | Show tag cloud widget in the blog sidebar. |
| Sidebar: Search | Display | Yes | Show search widget in the blog sidebar. |
| Enable Feeds | RSS / Atom Feeds | Yes | Enable RSS 2.0 and Atom 1.0 feed endpoints. |
| Posts Per Feed | RSS / Atom Feeds | - | Maximum posts in each feed. |
| Include Full Content | RSS / Atom Feeds | No | Include <content:encoded> with full HTML in feed items. |
| Per-Category Feeds | RSS / Atom Feeds | Yes | Enable per-category RSS feed endpoints. |
| Per-Tag Feeds | RSS / Atom Feeds | Yes | Enable per-tag RSS feed endpoints. |
| Per-Author Feeds | RSS / Atom Feeds | Yes | Enable per-author RSS feed endpoints. |
| Cache TTL (seconds) | RSS / Atom Feeds | - | How long feed output is cached before regeneration. |
| Title Template | SEO | - | Page title template with {{post.title}}, {{post.category}}, {{post.author}} tokens. |
| Fallback Meta Description | SEO | - | Used when a post has no custom meta description. |
| Tag Thin-Content Threshold | SEO | - | Tags with fewer posts than this number are auto-set to noindex,follow. |
| Auto-extract TL;DR | AEO | Yes | Auto-populate the TL;DR summary from the first 80-120 words when the field is blank. |
| HowTo Auto-detect | AEO | Yes | Auto-emit HowTo JSON-LD when numbered H2 steps are detected in post content. |
| Include in llms.txt | AIO | Yes | Inject a blog section into /llms.txt when Panth_LlmsTxt is installed. |
| Max Posts in llms.txt Blog Section | AIO | 50 | Cap on the number of posts listed in /llms.txt and /llms.json. |
| Include in llms-full.txt | AIO | Yes | Include blog posts in the extended /llms-full.txt file. |
| Enable Markdown Export Endpoint | AIO | Yes | Enable /blog/<slug>.md for each published post. |
| AI Bots Allow-list | AIO | - | Comma-separated user-agent tokens for AI bots allowed to crawl blog content. |
| Enable IndexNow Notifications | IndexNow | Yes | Ping Bing and Yandex via IndexNow when posts are published. |
| Notify on Publish | IndexNow | Yes | Queue a ping when a post transitions to published status. |
| Notify on Update | IndexNow | Yes | Re-queue a published post on every subsequent save. |
| Notify on Delete | IndexNow | Yes | Ping IndexNow on post deletion to speed up de-indexing. |
| Batch Size | IndexNow | 100 | Maximum URLs drained per cron run. |
| Enable Comments | Comments | No | Enable the comment system. Disabled by default. |
| Who Can Comment | Comments | - | Restrict commenting to guests, registered customers, or both. |
| Auto-approve Registered Customers | Comments | No | Skip the moderation queue for logged-in customers. |
| Max Submissions per Hour per IP | Comments | - | Rate-limit scaffold (not enforced in v1). |
| Allow Threaded Replies | Comments | Yes | Allow one level of reply threading on comments. |
| CAPTCHA Provider | Comments | - | Select math, Turnstile, hCaptcha, or reCAPTCHA (scaffolding in v1). |
| Add rel="nofollow" to External Links | Comments | Yes | Inject rel="nofollow" on external links in comment content. |
All settings are store-view scoped where applicable.
How It Works
- Posts are managed from Admin → Panth Infotech → Blog → Manage Posts using standard Magento UI components.
- When a post is saved with
publishedstatus, the observer queues the URL for IndexNow and triggers URL rewrite creation. - The custom router matches
/blog/*paths and dispatches to the appropriate controller: index, post, category, tag, author, search, feed, or markdown export. - Each page response injects JSON-LD structured data and OG/Twitter Card meta into the page
<head>. - For Hyva stores, Alpine.js components handle the TOC, sidebar search, and share buttons with no jQuery. For Luma stores, the
pb-*BEM stylesheet provides the same visual result. - Cron jobs run scheduled publishing, count refresh, feed cache warming, and IndexNow queue drain automatically.
URL Structure
| Path | Page |
|---|---|
/blog |
Index: featured post + paginated grid |
/blog/page/2 |
Paginated index |
/blog/<slug> |
Single post |
/blog/<slug>.md |
Markdown export of the post |
/blog/category/<slug> |
Category listing |
/blog/category/<slug>/page/2 |
Paginated category |
/blog/tag/<slug> |
Tag listing |
/blog/author/<slug> |
Author profile with their posts |
/blog/search?q=keyword |
Blog search results |
/blog/feed.xml |
RSS 2.0 site-wide feed |
/blog/feed/atom.xml |
Atom 1.0 site-wide feed |
/blog/feed/category/<slug>.xml |
Per-category RSS 2.0 |
/blog/feed/tag/<slug>.xml |
Per-tag RSS 2.0 |
/blog/feed/author/<slug>.xml |
Per-author RSS 2.0 |
The route front name (blog) is configurable. Changing it via admin automatically updates all canonical URLs, pagination links, feed discovery tags, and JSON-LD @id values after a cache flush.
Admin Management
- Manage Posts at
Panth Infotech → Blog → Manage Posts: full CRUD with featured image, WYSIWYG body, multi-tab form (Content / Categorisation / Publishing / SEO / AEO), mass delete, status toggle, duplicate action. - Manage Categories at
Panth Infotech → Blog → Manage Categories: hierarchical tree, banner image, per-category template and posts-per-page override. - Manage Tags at
Panth Infotech → Blog → Manage Tags: flat list with post-count and robots directive columns. - Manage Authors at
Panth Infotech → Blog → Manage Authors: display name, role, avatar, bio, social links JSON, and schema fields (knowsAbout,alumniOf,sameAs). - Manage Comments at
Panth Infotech → Blog → Manage Comments: moderation grid with bulk approve and bulk spam, IP column, pending/approved/spam/trash workflow.
Screenshots
Admin
Storefront
JSON-LD Schema
Every blog page emits Google-valid structured data as JSON-LD in a @graph. Example for a single post:
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "BlogPosting",
"@id": "https://example.com/blog/getting-started-with-hyva#article",
"headline": "Getting started with Hyva",
"description": "A practical walkthrough of installing Hyva.",
"datePublished": "2026-05-18T12:00:00+00:00",
"dateModified": "2026-05-18T12:00:00+00:00",
"wordCount": 850,
"timeRequired": "PT4M",
"author": {"@id": "https://example.com/blog/author/jane-doe#person"}
},
{
"@type": "Person",
"@id": "https://example.com/blog/author/jane-doe#person",
"name": "Jane Doe",
"jobTitle": "Senior Editor",
"knowsAbout": ["Magento", "Hyva"]
},
{
"@type": "BreadcrumbList",
"itemListElement": [
{"@type": "ListItem", "position": 1, "name": "Home", "item": "https://example.com/"},
{"@type": "ListItem", "position": 2, "name": "Blog", "item": "https://example.com/blog"},
{"@type": "ListItem", "position": 3, "name": "Getting started with Hyva", "item": "https://example.com/blog/getting-started-with-hyva"}
]
}
]
}
FAQPage schema is added when the Panth_Faq inline widget is on the page. HowTo schema is added when numbered H2 steps are detected. Both are controlled by admin toggles and validate in Google's Rich Results Test.
AI Integration
llms.txt
When Panth_LlmsTxt is installed, Panth Blog injects a ## Blog Posts section into /llms.txt and /llms-full.txt:
## Blog Posts
Latest articles from this store.
- [Getting started with Hyva](/blog/getting-started-with-hyva) — A practical walkthrough of installing Hyva.
- [Core Web Vitals for Magento in 2026](/blog/core-web-vitals-2026) — INP replaced FID. Here is what to measure.
The number of posts is capped by the Max Posts in llms.txt Blog Section setting (default 50). A structured blog section is also added to /llms.json with URL, label, summary, and published_at per entry.
IndexNow
The Observer/PostSaveAfter.php observer queues post URLs in the panth_blog_indexnow_queue table when a post transitions to published. The Cron/NotifyIndexNow.php job drains the queue every 5 minutes, in configurable batches, using Panth_IndexNow if installed, or a direct API POST as fallback.
Manual ping:
bin/magento panth:blog:indexnow:ping --post-id=2
RSS and Atom Feeds
Panth Blog ships six feed endpoints, all RFC-compliant and cached via the panth_blog_feed cache type:
| Endpoint | Format | Scope |
|---|---|---|
/blog/feed.xml |
RSS 2.0 | Site-wide latest N posts |
/blog/feed/atom.xml |
Atom 1.0 | Site-wide latest N posts |
/blog/feed/category/<slug>.xml |
RSS 2.0 | Per category |
/blog/feed/tag/<slug>.xml |
RSS 2.0 | Per tag |
/blog/feed/author/<slug>.xml |
RSS 2.0 | Per author |
/blog/feed/comments.xml |
RSS 2.0 | Latest 25 approved comments (when comments are enabled) |
Each item includes <title>, <link>, <guid>, <description> (CDATA), optional <content:encoded>, RFC 822 <pubDate>, <dc:creator>, <category>, and optional <media:content>. Cache TTL and per-type feed toggles are admin-configurable.
Markdown Export
Every published post is reachable at /blog/<slug>.md with Content-Type: text/markdown; charset=utf-8 and YAML frontmatter:
--- title: "Getting started with Hyva" url_key: getting-started-with-hyva published_at: 2026-05-18 12:00:00 --- > A practical walkthrough of installing Hyva. ## Why Hyva Hyva is a Tailwind-based front-end for Magento that replaces the Luma + RequireJS stack.
Disable per store at panth_blog/aio/markdown_export_enabled=0.
CLI Commands
# Rebuild URL rewrites for all blog entities bin/magento panth:blog:url-rewrite:rebuild # Recompute denormalised post counts on categories and tags bin/magento panth:blog:counts:refresh # Export a post as markdown to stdout bin/magento panth:blog:post:export --post-id=2 --format=markdown > post.md # Import a markdown file with YAML frontmatter as a new post bin/magento panth:blog:post:import path/to/post.md # Queue an IndexNow ping for a single post bin/magento panth:blog:indexnow:ping --post-id=2 # Apply thin-content robots flip to all tags bin/magento panth:blog:tags:auto-robots # Generate OG images (stub in v1) bin/magento panth:blog:og-images:generate [--post-id=N] # Seed 5 demo authors, categories, tags, and posts (idempotent) bin/magento panth:blog:seed:demo
Cron Jobs
| Job | Schedule | Purpose |
|---|---|---|
panth_blog_publish_scheduled |
every 5 min | Flip scheduled posts to published when published_at <= NOW() |
panth_blog_refresh_post_counts |
nightly 03:30 | Recompute post counts on categories and tags; apply thin-content robots |
panth_blog_warm_feed_cache |
hourly :15 | Regenerate RSS and Atom feeds in the panth_blog_feed cache |
panth_blog_notify_indexnow |
every 5 min | Drain IndexNow queue |
panth_blog_archive_stale_drafts |
weekly Sun 05:00 | Move drafts older than 180 days to archived |
panth_blog_heartbeat |
daily 08:00 | Install reporter heartbeat |
REST and GraphQL APIs
REST endpoints
GET /V1/panth-blog/posts — list posts (anonymous)
GET /V1/panth-blog/posts/:id — single post by ID (anonymous)
POST /V1/panth-blog/posts — create post (admin token)
PUT /V1/panth-blog/posts/:id — update post (admin token)
DELETE /V1/panth-blog/posts/:id — delete post (admin token)
# Same shape for /V1/panth-blog/categories, /V1/panth-blog/tags, /V1/panth-blog/authors
GraphQL queries (read-only)
{
panthBlogPosts(filter: {category_url_key: "hyva"}, pageSize: 10, currentPage: 1) {
items {
post_id url_key title short_description featured_image published_at reading_time_min
}
total_count
page_info { current_page page_size total_pages }
}
panthBlogPost(urlKey: "getting-started-with-hyva") {
post_id title content tldr_summary word_count
}
panthBlogCategories { category_id url_key name post_count }
panthBlogTags { tag_id url_key name post_count }
panthBlogAuthors { author_id url_key display_name role short_bio }
}
FAQ
Does Panth Blog work on Hyva?
Yes. Panth Blog ships native Hyva templates built with Tailwind and Alpine.js. There is no jQuery, Knockout, or RequireJS on the Hyva path. The module detects the active theme through Panth_Core and serves the correct template set.
Does it work without Hyva?
Yes. Luma is fully supported with a complete pb-* BEM stylesheet that does not depend on Tailwind. The visual design is the same on both themes.
Do I need any other modules?
You need mage2kishan/module-core (free, installed automatically by Composer). The llms.txt, IndexNow, XML sitemap, hreflang, and HTML sitemap integrations are optional and each guarded by a class-exists check, so they activate only when the relevant Panth module is present.
Can I change the /blog URL prefix?
Yes. Set "Route Front Name" in admin to anything you like (e.g. articles). After a cache flush and URL rewrite rebuild (bin/magento panth:blog:url-rewrite:rebuild), all URLs, canonical tags, feed links, and JSON-LD @id values follow the new prefix automatically.
Can I disable the AI features individually?
Yes. Every AIO and AEO feature has its own admin toggle. Set panth_blog/aio/llms_txt_include=0 to stop injecting posts into /llms.txt, panth_blog/aio/markdown_export_enabled=0 to disable the Markdown endpoint, and panth_blog/aeo/howto_auto_detect=0 to stop auto-emitting HowTo schema.
Are comments safe to enable in production?
The database schema, repository, moderation grid, and admin workflow are production-ready. The storefront submission form and CAPTCHA enforcement are scaffolded in v1 but not yet fully wired. Enable comments only if you plan to complete the front-end integration first.
Can I import existing blog content?
Yes. Run bin/magento panth:blog:post:import path/to/post.md. The importer reads YAML frontmatter for title, url_key, author, status, published_at, short_description, tags, and categories. Point it at a directory of exported markdown files in a loop to migrate from another platform.
Does it work on Adobe Commerce Cloud?
Yes. The module is Composer-installable, uses declarative schema, writes no files outside the standard Magento paths, and respects all Cloud read-only filesystem constraints.
Is the JSON-LD output valid?
Yes. The output is designed to pass Google's Rich Results Test. BlogPosting, Person, BreadcrumbList, FAQPage, and HowTo schema all follow the current schema.org specification, and each type is only emitted when the relevant content is present.
Support
| Channel | Contact |
|---|---|
| Product Page | kishansavaliya.com/magento-2-blog.html |
| kishansavaliyakb@gmail.com | |
| Website | kishansavaliya.com |
| +91 84012 70422 | |
| GitHub Issues | github.com/mage2sk/module-blog/issues |
| Upwork (Top Rated Plus) | Hire Kishan Savaliya |
| Upwork Agency | Panth Infotech |
Response time: 1-2 business days.
Need Custom Magento Development?
Looking for custom Magento module development, Hyva theme work, store migrations, or performance tuning? Get a free quote in 24 hours:
About Panth Infotech
Built and maintained by Kishan Savaliya (kishansavaliya.com), a Top Rated Plus Magento developer on Upwork with 10+ years of eCommerce experience.
Panth Infotech is a Magento 2 development agency that builds high quality, security focused extensions and themes for both Hyva and Luma storefronts. The extension suite covers SEO, performance, checkout, product presentation, customer engagement, and store management, with each module built to MEQP standards and tested across Magento 2.4.4 to 2.4.8.
Browse the full extension catalog on our Magento extensions page or on Packagist.
Quick Links
| Resource | Link |
|---|---|
| Product Page | magento-2-blog.html |
| Packagist | mage2kishan/module-blog |
| GitHub | mage2sk/module-blog |
| Website | kishansavaliya.com |
| Free Quote | kishansavaliya.com/get-quote |
| Upwork (Top Rated Plus) | Hire Kishan Savaliya |
| Upwork Agency | Panth Infotech |
| kishansavaliyakb@gmail.com | |
| +91 84012 70422 |
Ready to add a content-driven blog to your Magento store?
SEO Keywords: magento 2 blog module, magento 2 blog extension, magento 2 blog, magento blog extension, magento 2 blog with seo, magento 2 blog json-ld, blogposting schema magento 2, magento 2 blog rss feed, magento 2 hyva blog, magento 2 blog alpine js, magento 2 blog tailwind, magento 2 blog indexnow, llms.txt magento blog, magento 2 blog ai search, magento 2 blog categories tags authors, magento 2 blog rest api, magento 2 blog graphql, magento 2 blog markdown export, magento 2 blog tldr, magento 2 blog table of contents, magento 2 blog aeo, magento 2 geo blog, magento 2 blog structured data, magento 2 blog schema markup, panth blog, panth infotech blog, mage2kishan blog, magento 2 blog 2.4.8, php 8.4 magento blog, magento 2 open source blog, adobe commerce blog extension, hire magento developer, top rated plus upwork, kishan savaliya magento, custom magento development
统计信息
- 总下载量: 7
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 2
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: proprietary
- 更新时间: 2026-05-18








