# mageplaza/magento-2-blog-extension

> Magento 2 Blog extension

`composer require mageplaza/magento-2-blog-extension`

Canonical URL: https://packagento.com/mageplaza/magento-2-blog-extension

## At a glance

- **Vendor**: mageplaza (https://packagento.com/mageplaza.md)
- **Latest version**: 4.3.1 — released 2026-04-16
- **Pricing**: Free
- **Package type**: Magento 2 module
- **Status**: active, accepting new buyers

## Installation

Packagento is licence-gated, so even free packages need a licence on a project before Composer can resolve them.

1. **Sign in or create an account** at https://packagento.com/customer/account/.

2. **Add the package to your account.** Open https://packagento.com/mageplaza/magento-2-blog-extension and complete the free checkout. A licence is minted automatically.

3. **Create or pick a project, then activate the licence on it.**
   - Projects represent the Magento installs you deploy to. Manage them at https://packagento.com/projects/.
   - Activate the new licence on the project you'll deploy this package to. Activation is what generates the Composer credentials scoped to that project.

4. **Add the project credentials to your Magento codebase.**

   Grab the project's public + private key from https://packagento.com/projects/ (open the project, then its Credentials tab), and add them to `auth.json`:

   ```json
   {
     "http-basic": {
       "packagento.com": {
         "username": "ppk_live_...",
         "password": "psk_live_..."
       }
     }
   }
   ```

   Add the Packagento Composer repository to `composer.json`:

   ```json
   {
     "repositories": [
       { "type": "composer", "url": "https://packagento.com" }
     ]
   }
   ```

5. **Install and apply.**

   ```bash
   composer require mageplaza/magento-2-blog-extension:*
   bin/magento setup:upgrade
   bin/magento setup:di:compile
   bin/magento cache:flush
   ```

## What it does

Magento 2 Blog extension

## README


**[Magento 2 Better Blog by Mageplaza](https://www.mageplaza.com/magento-2-blog-extension/)** is integrated right into the Magento backend so you can manage your blog and your e-commerce store all in the one place. It is the perfect marketing tool for your bussiness that not only provides update information to your existing customers but also drive more visitors to your online store.

[![Codacy Badge](https://api.codacy.com/project/badge/Grade/7f52db083c5f47648e26d92060d75b73)](https://app.codacy.com/app/mageplaza/magento-2-blog?utm_source=github.com&utm_medium=referral&utm_content=mageplaza/magento-2-blog&utm_campaign=Badge_Grade_Dashboard)
[![Latest Stable Version](https://poser.pugx.org/mageplaza/magento-2-blog-extension/v/stable)](https://packagist.org/packages/mageplaza/magento-2-blog-extension)
[![Total Downloads](https://poser.pugx.org/mageplaza/magento-2-blog-extension/downloads)](https://packagist.org/packages/mageplaza/magento-2-blog-extension)


### 1. Documentation

- [Installation guide](https://www.mageplaza.com/install-magento-2-extension/)
- [User guide](https://docs.mageplaza.com/blog-m2/index.html)
- [Download from our Live site](https://www.mageplaza.com/magento-2-blog-extension/)
- Mageplaza Blog has been verified on [Magento Marketplace](https://marketplace.magento.com/mageplaza-magento-2-blog-extension.html)
- [Get Free Support](https://github.com/mageplaza/magento-2-blog-extension/issues)
- Get premium support from Mageplaza: [Purchase Support package](https://www.mageplaza.com/magento-2-extension-support-package/)
- [Contribute on Github](https://github.com/mageplaza/magento-2-blog/)
- [Releases](https://github.com/mageplaza/magento-2-blog/releases)
- [License](https://www.mageplaza.com/LICENSE.txt)

### 2. FAQs

##### Q: I got error: `Mageplaza_Core has been already defined`
A: Read solution: https://github.com/mageplaza/module-core/issues/3


### 3. How to install


### ✓ Install via composer (recommend)
Run the following command in Magento 2 root folder:

With Marketing Automation + GraphQL (Support PWA) (recommend):

```
composer require mageplaza/magento-2-blog-extension mageplaza/module-blog-graphql mageplaza/module-smtp
php bin/magento setup:upgrade
php bin/magento setup:static-content:deploy
```

With GraphQL (Support PWA):

```
composer require mageplaza/magento-2-blog-extension mageplaza/module-blog-graphql
php bin/magento setup:upgrade
php bin/magento setup:static-content:deploy
```

Without GraphQL:

```
composer require mageplaza/magento-2-blog-extension mageplaza/module-smtp
php bin/magento setup:upgrade
php bin/magento setup:static-content:deploy
```


#### ✓ Install Magento 2 Blog GraphQL module only

```
composer require mageplaza/module-blog-graphql
php bin/magento setup:upgrade
php bin/magento setup:static-content:deploy
```

#### ✓ Install ready-to-paste package

- Download the latest version at [Mageplaza Blog for Magento 2](https://www.mageplaza.com/magento-2-blog-extension/)
-  [Installation guide](https://www.mageplaza.com/install-magento-2-extension/)



### 4. Contribute to this module

Feel free to **Fork** and contrinute to this module and create a pull request so we will merge your changes to `master` branch.

Thanks [the contributors](https://github.com/mageplaza/magento-2-blog/graphs/contributors)

--------





### 6. Blog benefits

Magento 2 blog extension can give you a greate opportunity to communicate with your potential and existing customers. Blog posts can help you to create a 2-way communication platform to publish new information such as news, promotions, comming products. Read more benefits of Blog.

![Magento 2 blog extension by Mageplaza](https://www.mageplaza.com/assets/img/extensions-images/magento-2-blog/mobile-mockup.jpg)

#### Drive more traffics
“Raise your hand if you need more targeted visitors. Sure, me too.”

Think of total number of pages you can find on your online store. Maybe not a ton, right? And think of how frequently you update those pages. Maybe not that usually, right? Well, running a blog helps resolve both of those problems.

Writing a blog helps as well you get discovered via social networks. Any time you write a blog post, you are building content that many people can share on social networking sites such as Twitter, LinkedIn, Facebook, Pinterest – which will help expose your web business to a new one audience that will not know you yet.

#### It may help convert that traffic into leads.
Similar to every blog post you write is yet another indexed page, each post is really a new chance to generate new leads. The way in which this works is absolutely simple: Just put in a lead-generating call-to-action to each blog post.

#### Boost Search Engine Optimization Ranking
Search Engines like Google loves fresh content. What better method to deliver frequent content compared to blog posts. By writing blog consistently, you provide Google and other search engines new content to index and you also create chances to plug in those all-important keywords to boost your visibility on search engine results pages (SERPS).

#### Build relationships with your customers
Writing a blog enables you to interact with your website visitors. You can accomplish this by asking your visitors questions at the conclusion of your posts to obtain the conversation going or simply by allowing comments and feedback. By reviewing and answering readers’ comments, you may create a rapport together with your audience, build trust, and gain valuable insight into what your visitors are seeking.

### Magento 2 Blog full feature list

- Responsive design
- SEO friendly
- Post attributes
- Multiselect tags
- Numerous Comment engine: Magento Built-in comments, Facebook Comment, Disqus Comment.
- RSS Optimization
- WYSIWYG editor in admin
- Blog breadcrumbs
- Import from AW M1 Blog, Magefan Blog, Wordpress
- Integ

_(README truncated for .md surface. Full README on https://packagento.com/mageplaza/magento-2-blog-extension.)_

## Changelog

Changelog: https://www.mageplaza.com/releases/blog

## Recent Versions

| Version | Released |
|---|---|
| 4.3.1 | 2026-04-16 |
| 4.3.0 | 2025-12-31 |
| 4.2.8 | 2025-04-17 |
| 4.2.7 | 2025-02-13 |
| 4.2.6 | 2024-11-14 |
| 4.2.5 | 2024-10-21 |
| 4.2.4 | 2024-08-21 |
| 4.2.3 | 2024-06-12 |
| 4.2.2 | 2024-04-16 |
| 4.2.1 | 2024-03-18 |

Showing 10 of 57 versions. Full release history on https://packagento.com/mageplaza/magento-2-blog-extension.

## Dependencies

### Require

| Package | Constraint |
|---|---|
| mageplaza/facebook-graph-sdk | ^1.0.2 |
| mageplaza/module-core | ^1.5.13 |

## Quality

Latest release (4.3.1) fails the Packagento QA pipeline. Verdicts below are per-cell (Magento line × PHP version) for the matrixed tools, and run-once for the static / security tiers.


### Compatibility

Each Magento line is installed on its supported PHP versions, then the module is built (DI compile + static-content deploy). Cells show passed / failed / untested; staircase gaps render as `–`.

| Magento | PHP 8.2 | PHP 8.3 | PHP 8.4 | PHP 8.5 |
|---|---|---|---|---|
| 2.4.7 | Pass | Pass | – | – |
| 2.4.8 | – | Pass | Pass | – |
| 2.4.9 | – | – | Pass | 1 |


### Code Quality

Advisory checks against the module's source. Never affect the Compatibility verdict — a phpcs finding can't make a module incompatible.

#### Static Analysis

Coding standards (phpcs), mess detection (phpmd), copy-pasted code (cpd), PHP cross-version compatibility, composer.json validity. Each runs once for the whole module.

| Tool | Status | Findings | Summary |
|---|---|---|---|
| PHPCS | Warning | 1175 | 1175 warnings (ruleset: Magento2) — 705 auto-fixable with phpcbf |
| PHPMD | Warning | 184 | 184 rule violations (IfStatementAssignment:45, NPathComplexity:30, CyclomaticComplexity:27, UndefinedVariable:24, ExcessiveMethodLength:18) |
| Cpd | Warning | 23 | 23 duplicated chunks spanning 1263 total lines (min-lines=5, min-tokens=70) |
| Composer validate | Info | 1 | valid; 1 advisory note (composer validate --strict) |

#### PHPStan

Type-checks the module against a real Magento install. Re-runs per Magento + PHP version because resolvable symbols differ between releases.

| Magento | PHP 8.2 | PHP 8.3 | PHP 8.4 | PHP 8.5 |
|---|---|---|---|---|
| 2.4.7 | 58 | 58 | – | – |
| 2.4.8 | – | 58 | 58 | – |
| 2.4.9 | – | – | 56 | 56 |


### Tests

Unit and integration suites run per Magento + PHP cell. Test failures speak to the module's behaviour, not its compatibility with a line, so they're reported here separately.

#### Unit Tests

| Magento | PHP 8.2 | PHP 8.3 | PHP 8.4 | PHP 8.5 |
|---|---|---|---|---|
| 2.4.7 | N/A | N/A | – | – |
| 2.4.8 | – | N/A | N/A | – |
| 2.4.9 | – | – | N/A | N/A |

#### Integration Tests

| Magento | PHP 8.2 | PHP 8.3 | PHP 8.4 | PHP 8.5 |
|---|---|---|---|---|
| 2.4.7 | N/A | N/A | – | – |
| 2.4.8 | – | N/A | N/A | – |
| 2.4.9 | – | – | N/A | N/A |


### Security

Dependency-advisory audit (composer audit) plus a source malware scan. A malware detection fails the version outright.

| Tool | Status | Findings | Summary |
|---|---|---|---|
| Composer audit | Pass | 0 |  |
| Malware scan | Pass | 0 |  |

## Licence and pricing

Free. A licence is still minted on checkout and bound to your project for Composer access — no payment step.

Refundable within 14 days of first purchase via https://packagento.com/account/refunds/.

## Install via Claude Code or any MCP client

The Packagento MCP server can run the licence + project + Composer steps above in one tool call:

```
purchase_and_install_packages(
  composer_names=["mageplaza/magento-2-blog-extension"],
  project_id="proj_xxx"
)
```

This handles cart, checkout, licence minting, project activation, and writes auth.json credentials. Connect a client with `claude mcp add packagento https://mcp.packagento.com`. Full setup at https://packagento.com/docs/mcp-setup.

## Vendor

mageplaza is a Magento 2 vendor on Packagento. See https://packagento.com/mageplaza.md for their full catalogue.

