fishpig / magento2-wordpress-integration-yoastseo

fishpig/magento2-wordpress-integration-yoastseo

Magento 2 WordPress Inegration Addon module to support the WordPress SEO plugin by Yoast.

magento2-module Compatibility: 2.4.7-2.4.9 Code Quality: Fail Tests: N/A Security: Pass

FishPig_WordPress_Yoast

A free Magento 2 module that integrates the Yoast SEO WordPress plugin with WordPress Integration.

Installation

This module required FishPig_WordPress be installed.

Composer

composer require fishpig/magento2-wordpress-integration-yoastseo
bin/magento module:enable FishPig_WordPress_Yoast && bin/magento setup:upgrade --keep-generated

Manual

mkdir -p app/code/FishPig && cd app/code/FishPig && \
curl -sS https://codeload.github.com/bentideswell/magento2-wordpress-integration-yoastseo/zip/master -o master.zip && \
unzip -q master.zip && rm -rf master.zip && mv magento2-wordpress-integration-yoastseo-master WordPress_Yoast && \
cd - && bin/magento module:enable FishPig_WordPress_Yoast && bin/magento setup:upgrade --keep-generated

WordPress Integration Add-ons

The following add-ons are currently available and more are on the way.

For an up to date list, check the Magento 2 WordPress Integration Add-ons page.

Changelog

Change log for FishPig_WordPress_Yoast.

[3.3.16] - 2026-06-19

[Fixed]

  • Fixed missing date helper when rewriting SEO strings.

## [3.3.15] - 2025-09-12

[Changed]

  • Remove unreplaced template variables

[3.3.14] - 2025-07-26

[Changed]

  • Changed escaping of OG tag names to allow unescaped colons.

[3.3.12] - 2025-07-18

[Fixed]

  • Added PHP 8.4 compatibility

[3.3.11] - 2024-02-26

[Fixed]

  • Fixed issue with stripcategorybase plugin option. Even if this is set in Admin,
    it can be overwritten in config as key is set in multiple options.

[3.3.10] - 2024-03-21

[Changed]

  • Changed links in README.md to use fishpig.com.

[3.3.9] - 2024-03-20

[Added]

  • Added pt_plural and pt_single variables to post view templates.

## [3.3.8] - 2024-01-27

[Changed]

  • Moved permalink plugin to global scope to ensure it runs during XML sitemap generation.

[3.3.7] - 2024-01-08

[Fixed]

  • Removed trailing comma in getTypeOption method declaration.

[3.3.6] - 2023-12-19

[Fixed]

  • Fixed config retrieval for post types that contain a hyphen. Yoast changes this
    to an underscore.

[3.3.5] - 2023-07-03

[Added]

  • Added WP theme file to stop CSS file being included in the XML sitemap index.
    This fixes CORS issues when using external integration and a separate WP
    domain.

[3.3.4] - 2023-06-08

[Changed]

  • Changed AssetProvider to use canProvideAssets method.

[3.3.3] - 2023-06-08

[Fixed]

  • Fixed issue introduced in 3.3.1 with dynamic routes.

[3.3.2] - 2023-05-09

[Fixed]

  • Fixed bug where term meta description template was not used.

[3.3.1] - 2023-04-17

[Changed]

  • Added plugin to change dynamic routing of category URLs when using /category/
    prefix even though Yoast config forbids this. This now results in a 404.

[3.3.0] - 2023-03-22

[Added]

  • Added PHP 8.2 support.

[3.2.1] - 2023-01-03

[Changed]

  • Changed string rewriting to include support for %%primary_category%%

[3.2.0] - 2022-08-26

[Added]

  • Added support for Premium URL redirects.

[3.1.1] - 2022-08-05

[Fixed]

  • \FishPig\WordPress\Model\Post::isPublic now returns false if post is set to
    noindex.

[3.1.0] - 2022-07-19

[Added]

  • Added a Factory class to prevent PSR-0 errors when optimizing the composer autoloader.

[3.0.9] - 2022-05-04

  • Fixed strict type error for str_replace

[3.0.8] - 2022-03-16

[Fixed]

  • Open Graph now uses meta description if specific description not set.

[3.0.7] - 2022-03-14

[Fixed]

  • Fixed missing YoastHelper class in StringRewriter.

[3.0.5] - 2022-02-08

[Changed]

  • Removed trailing commas to fix some PHP 7.2 compat issues. This is fine in PHP 7.3 and above.

[3.0.4] - 2022-01-06

Fixed

  • Various strict type errors
  • Incorrect variable name ($object, should have been $postType)

[3.0.2] - 2021-12-22

[Changed]

  • Code formatting clean up

[3.0.1] - 2021-12-16

Fixed

  • Updated some references to legacy classes to the new versions.

[3.0.0] - 2021-12-15

A new major version to support the changes in fishpig/magento2-wordpress-integration (FishPig_WordPress)

----- Legacy Change Log Below -------

21/05/2021 - 2.0.11.6

  • Fixed issue when using custom post titles.

18/12/2020 - 2.0.11.5

  • Fixed issue when rewriteString encounters an array from ACF.

30/06/2020 - 2.0.11.4

  • Changed Data helper to Proxy in Breadcrumbs plugin.

10/01/2020 - 2.0.0.25

  • Code formatting cleanup

16/12/2019 - 2.0.0.24

  • Optimised meta data retrieval when using Shortcodes & Widgets

23/11/2019 - 2.0.0.23

  • Fixed issue with og:url when using static page as posts page

14/11/2019 - 2.0.0.22

  • Fixed several issues with author meta data

28/10/2019 - 2.0.0.21

  • Fixed og:image tag so original image is used rather than the 150x150 thumbnail

25/10/2019 - 2.0.0.19

  • Fixed issue when using %category% in permalink structure

14/10/2019 - 2.0.0.17

  • Changed og:image to full size image rather than smallest image

02/10/2019 - 2.0.0.16

  • Fixed issue with Factory

31/05/2019 - 2.0.0.14

  • Added fix for Yoast variables displaying instead of rendered page title.

28/05/2019 - 2.0.0.12

  • Added support for the Yoast breadcrumbs enable/disable flag

08/04/2019 - 2.0.0.10

  • Added support for the Yoast Primary category feature. Calling $post->getParentTerm('category') returns the primary category set via Yoast.

06/03/2019 - 2.0.0.8
Fixed warning regarding invalid argument for foreach.

22/01/2019 - 2.0.0.5

  • Fixed issue with posts page title and custom post type archive meta data.

21/01/2019 - 2.0.0.4

  • Fixed issue where breadcrumb settings in Yoast were used even when the Yoast config had breadcrumbs disabled.

21/01/2019 - 2.0.0.3
Removed 'Page 1 of 1' from page titles.

03/10/2018 - 2.0.0.1

  • Fixed issue with fatal error when calling getFactory() method.

11/05/2018 - 1.0.0.20

  • Added support for custom fields. You can use custom fields like so: %%cf_custom_field%% where custom_field is the custom field name. If the custom field was 'meta_description' the token would be %%cf_meta_description%%.
Versions
Version Stability QA Status Compatibility Released
3.3.16 stable Fail Magento 2.4.7-2.4.9 Details 2026-06-19 09:54:42
3.3.15 stable Fail Magento 2.4.7-2.4.9 Details 2025-09-12 12:42:23
3.3.14 stable Not tested Not yet tested Details 2025-07-26 06:08:04
3.3.12 stable Not tested Not yet tested Details 2025-07-18 08:36:07
3.3.11 stable Not tested Not yet tested Details 2024-03-26 09:09:39
3.3.10 stable Not tested Not yet tested Details 2024-03-21 13:02:55
3.3.9 stable Not tested Not yet tested Details 2024-03-20 14:58:36
3.3.8 stable Not tested Not yet tested Details 2024-01-27 06:32:59
3.3.7 stable Not tested Not yet tested Details 2024-01-08 15:17:41
3.3.6 stable Not tested Not yet tested Details 2023-12-19 15:48:46
3.3.5 stable Not tested Not yet tested Details 2023-07-03 12:05:08
3.3.4 stable Not tested Not yet tested Details 2023-06-08 11:03:40
3.3.3 stable Not tested Not yet tested Details 2023-06-08 09:57:54
3.3.2 stable Not tested Not yet tested Details 2023-05-09 14:13:08
3.3.1 stable Not tested Not yet tested Details 2023-04-17 08:37:01
3.3.0 stable Not tested Not yet tested Details 2023-03-22 14:31:49
3.2.1 stable Not tested Not yet tested Details 2023-01-03 11:20:25
3.2.0 stable Not tested Not yet tested Details 2022-08-26 15:37:52
3.1.1 stable Not tested Not yet tested Details 2022-08-05 08:16:24
3.1.0 stable Not tested Not yet tested Details 2022-07-19 12:38:29
3.0.9 stable Not tested Not yet tested Details 2022-05-04 10:06:02
3.0.8 stable Not tested Not yet tested Details 2022-03-16 19:14:16
3.0.7 stable Not tested Not yet tested Details 2022-03-14 09:16:48
3.0.5 stable Not tested Not yet tested Details 2022-02-08 13:43:48
3.0.4 stable Not tested Not yet tested Details 2022-01-06 13:20:29
3.0.3 stable Not tested Not yet tested Details 2021-12-23 14:02:24
3.0.2 stable Not tested Not yet tested Details 2021-12-22 17:47:24
3.0.1 stable Not tested Not yet tested Details 2021-12-16 10:14:02
3.0.0 stable Not tested Not yet tested Details 2021-12-15 13:32:48
2.0.23.0 stable Not tested Not yet tested Details 2021-09-09 12:04:38
2.0.11.9 stable Not tested Not yet tested Details 2021-08-20 23:08:10
2.0.11.8 stable Not tested Not yet tested Details 2021-05-28 13:31:05
2.0.11.6 stable Not tested Not yet tested Details 2021-05-21 12:46:26
2.0.11.5 stable Not tested Not yet tested Details 2020-12-18 12:43:06
2.0.11.4 stable Not tested Not yet tested Details 2020-06-30 11:36:09
2.0.11.3 stable Not tested Not yet tested Details 2020-03-06 13:14:58
2.0.11.0 stable Not tested Not yet tested Details 2020-02-24 17:30:12
2.0.0.26 stable Not tested Not yet tested Details 2020-02-10 09:45:04
2.0.0.25 stable Not tested Not yet tested Details 2020-01-14 08:01:13
2.0.0.24 stable Not tested Not yet tested Details 2019-12-16 22:27:25
2.0.0.23 stable Not tested Not yet tested Details 2019-11-23 14:43:37
2.0.0.22 stable Not tested Not yet tested Details 2019-11-14 13:41:39
2.0.0.21 stable Not tested Not yet tested Details 2019-10-28 09:42:00
2.0.0.20 stable Not tested Not yet tested Details 2019-10-25 12:43:45
2.0.0.19 stable Not tested Not yet tested Details 2019-10-25 12:35:39
2.0.0.18 stable Not tested Not yet tested Details 2019-10-14 15:04:22
2.0.0.17 stable Not tested Not yet tested Details 2019-10-14 08:59:35
2.0.0.16 stable Not tested Not yet tested Details 2019-10-02 16:12:06
2.0.0.15 stable Not tested Not yet tested Details 2019-07-11 13:23:48
2.0.0.14 stable Not tested Not yet tested Details 2019-05-31 12:32:49
2.0.0.12 stable Not tested Not yet tested Details 2019-05-28 13:23:36
2.0.0.11 stable Not tested Not yet tested Details 2019-04-16 12:23:22
2.0.0.10 stable Not tested Not yet tested Details 2019-04-08 17:04:51
2.0.0.9 stable Not tested Not yet tested Details 2019-03-22 23:47:07
2.0.0.8 stable Not tested Not yet tested Details 2019-03-07 15:12:15
2.0.0.7 stable Not tested Not yet tested Details 2019-01-26 13:14:38
2.0.0.6 stable Not tested Not yet tested Details 2019-01-22 15:12:21
2.0.0.5 stable Not tested Not yet tested Details 2019-01-22 12:00:16
2.0.0.4 stable Not tested Not yet tested Details 2019-01-21 17:56:42
2.0.0.3 stable Not tested Not yet tested Details 2019-01-21 15:04:34
2.0.0.2 stable Not tested Not yet tested Details 2018-10-08 12:56:24
2.0.0.1 stable Not tested Not yet tested Details 2018-10-03 10:38:07
2.0.0.0 stable Not tested Not yet tested Details 2018-09-06 08:57:53
1.0.0.22 stable Not tested Not yet tested Details 2018-06-01 12:44:24
1.0.0.21 stable Not tested Not yet tested Details 2018-05-16 14:18:19
1.0.0.20 stable Not tested Not yet tested Details 2018-05-11 13:15:25
1.0.0.19 stable Not tested Not yet tested Details 2018-04-24 12:16:03
1.0.0.18 stable Not tested Not yet tested Details 2018-01-31 08:11:58
1.0.0.17 stable Not tested Not yet tested Details 2018-01-31 08:11:10
1.0.0.16 stable Not tested Not yet tested Details 2018-01-08 13:18:14
1.0.0.15 stable Not tested Not yet tested Details 2017-10-13 10:07:56
1.0.0.14 stable Not tested Not yet tested Details 2017-10-12 15:37:27
1.0.0.12 stable Not tested Not yet tested Details 2017-08-30 10:08:36
1.0.0.11 stable Not tested Not yet tested Details 2017-07-31 08:42:29
1.0.0.10 stable Not tested Not yet tested Details 2017-07-26 14:46:10
1.0.0.9 stable Not tested Not yet tested Details 2017-05-31 15:39:31
1.0.0.8 stable Not tested Not yet tested Details 2017-05-10 12:53:22
1.0.0.7 stable Not tested Not yet tested Details 2017-05-04 07:04:44
1.0.0.6 stable Not tested Not yet tested Details 2017-05-02 07:19:08
1.0.0.5 stable Not tested Not yet tested Details 2017-04-17 18:20:57

Requires 1

Package Constraint
fishpig/magento2-wordpress-integration ^3.29.0

Compatibility

Each Magento release line is installed on its supported PHP versions, then the module is built (DI compilation + static-content deploy) and its unit and integration suites are run. The matrix shows the lines and PHP versions the module is confirmed to install and run on. Code-quality results further down (phpstan, phpcs, …) are reported separately and never affect compatibility.

Compatibility matrix (Magento × PHP)
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 Pass

Code Quality

Advisory checks against the module's source. Static analysis runs once across the whole module; PHPStan re-runs per Magento + PHP version because resolvable symbols differ between releases. These NEVER affect the Compatibility badge — 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.

Static analysis results
Tool Status Findings Summary
PHPCS Warning 61 61 warnings (ruleset: Magento2)
PHPMD Warning 42 42 rule violations (IfStatementAssignment:24, UnusedFormalParameter:9, UnusedLocalVariable:4, NPathComplexity:2, UnusedPrivateField:1)
Cpd Pass 0
Composer validate Info 2 valid; 2 advisory notes (composer validate --strict)

PHPStan

Type-checks the module's PHP against a real Magento install at the configured gate level. Re-runs per Magento and PHP version because resolvable symbols differ between releases. Cell → details modal.

PHPStan results by Magento and PHP version
Magento PHP 8.2 PHP 8.3 PHP 8.4 PHP 8.5
2.4.7 554 554
2.4.8 556 556
2.4.9 554 554

Tests

Unit and integration suites, run for each applicable Magento and PHP version. A test failure speaks to the module's behaviour, not its compatibility with a Magento line, so it is reported here separately and never reddens the compatibility matrix.

Unit tests

Unit tests results by Magento and PHP version
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

Integration tests results by Magento and PHP version
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

Security checks run directly against the module: an audit of its declared dependencies for known vulnerabilities (composer audit) and a scan of its source for malware and web-shell signatures. Each runs once. A malware detection fails the version outright.

Security results
Tool Status Findings Summary
Composer audit Pass 0
Malware scan Pass 0

No license declared

This package's composer.json doesn't declare a license, homepage, or authors. Check the source repository for terms of use.

More from fishpig

View vendor
Make it pay

Turn an existing module into recurring revenue.

If you already maintain a Magento 2 module on GitHub or GitLab, listing it on Packagento takes about five minutes. We mirror your tags, handle distribution signing, and route paid licenses through Stripe Connect, so you can keep shipping the way you already do.